<SEC-DOCUMENT>0000860731-21-000014.txt : 20210219
<SEC-HEADER>0000860731-21-000014.hdr.sgml : 20210219
<ACCEPTANCE-DATETIME>20210219163935
ACCESSION NUMBER:		0000860731-21-000014
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		101
CONFORMED PERIOD OF REPORT:	20201231
FILED AS OF DATE:		20210219
DATE AS OF CHANGE:		20210219

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:		21656557

	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>tyl-20201231.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version="1.0" ?><!--XBRL Document Created with Wdesk from Workiva--><!--Copyright 2021 Workiva--><!--r:cb70be07-24b1-4aa6-9599-1da6bf66cbac,g:07fa3be8-7f1e-4f83-baed-fe8860b305ca,d:8b7048d9282b49808c9b0dc46622e6f3--><html xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns="http://www.w3.org/1999/xhtml" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:us-gaap="http://fasb.org/us-gaap/2020-01-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:dei="http://xbrl.sec.gov/dei/2020-01-31" xmlns:srt="http://fasb.org/srt/2020-01-31" xmlns:tyl="http://www.tylertech.com/20201231" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>tyl-20201231</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:AmendmentFlag" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM180L2ZyYWc6YjEyYTM5MTEzY2Y5NDk4YmE3OTIzMTg0MTljNDJmNjcvdGFibGU6NGJiNjIyNmI0NTQyNDcwMzk3NWJjOWFkNmY3NDVmYzUvdGFibGVyYW5nZTo0YmI2MjI2YjQ1NDI0NzAzOTc1YmM5YWQ2Zjc0NWZjNV8xLTEtMS0xLTA_5e6301db-97a8-4401-b565-5d3be4f7aa58">false</ix:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:DocumentFiscalYearFocus" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM180L2ZyYWc6YjEyYTM5MTEzY2Y5NDk4YmE3OTIzMTg0MTljNDJmNjcvdGFibGU6NGJiNjIyNmI0NTQyNDcwMzk3NWJjOWFkNmY3NDVmYzUvdGFibGVyYW5nZTo0YmI2MjI2YjQ1NDI0NzAzOTc1YmM5YWQ2Zjc0NWZjNV8yLTEtMS0xLTA_703c5ca2-fc81-40cf-98f7-b2832bdffa49">2020</ix:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:DocumentFiscalPeriodFocus" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM180L2ZyYWc6YjEyYTM5MTEzY2Y5NDk4YmE3OTIzMTg0MTljNDJmNjcvdGFibGU6NGJiNjIyNmI0NTQyNDcwMzk3NWJjOWFkNmY3NDVmYzUvdGFibGVyYW5nZTo0YmI2MjI2YjQ1NDI0NzAzOTc1YmM5YWQ2Zjc0NWZjNV8zLTEtMS0xLTA_88fd8fa4-fa75-4cc2-adba-8bb5d847063b">FY</ix:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityCentralIndexKey" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM180L2ZyYWc6YjEyYTM5MTEzY2Y5NDk4YmE3OTIzMTg0MTljNDJmNjcvdGFibGU6NGJiNjIyNmI0NTQyNDcwMzk3NWJjOWFkNmY3NDVmYzUvdGFibGVyYW5nZTo0YmI2MjI2YjQ1NDI0NzAzOTc1YmM5YWQ2Zjc0NWZjNV80LTEtMS0xLTA_e8b09dbf-3a5c-4cfd-ad3b-bad594fd992a">0000860731</ix:nonNumeric><ix:nonNumeric contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" name="us-gaap:AccountingStandardsUpdateExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTAtMS0xLTMxMS90ZXh0cmVnaW9uOmU5NGZmNTU3ZDZiODQzN2M4MGNiZjY5ZDUwNmM2ZjcwXzI3NDg3NzkwNjk1MzU_923613e0-f2a8-4401-b2b1-01763b60874a">us-gaap:AccountingStandardsUpdate201602Member</ix:nonNumeric><ix:nonNumeric contextRef="i5444796c7d4b449f9947dd51c47222e9_D20200101-20201231" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NTQ_08918ce7-ad26-42b7-86b9-69235399badb">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="i5444796c7d4b449f9947dd51c47222e9_D20200101-20201231" name="tyl:RevenueFromContractWithCustomerContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMjg_6534193c-8989-4ffa-9739-99f420f614b6">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="i5444796c7d4b449f9947dd51c47222e9_D20200101-20201231" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzI_08918ce7-ad26-42b7-86b9-69235399badb">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="ia22c2945847d4417af7ec35f1e88400f_D20200101-20201231" name="tyl:RevenueFromContractWithCustomerContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEyMDA2_9f4088ec-ac39-4e93-acc6-7f71ad2066bc">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231" name="tyl:SalesCommissionsAmortizationPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDg1_ec9a6f16-bae1-475d-873b-a2db6cd27396">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="id13b861c42bc48dfb625053a4d857592_D20200101-20201231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzM5_742741b4-d349-4bdd-bcc2-2875ba4c7867">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="ib375b5571fae4e25a902fad22df123ec_D20200101-20201231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDkx_687d0a58-f81d-42cd-a498-8c22c9cbf84c">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzgwMw_9c8021d3-ecd5-465d-842a-27ecc42ff8e3">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="ib375b5571fae4e25a902fad22df123ec_D20200101-20201231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzEwOTA_687d0a58-f81d-42cd-a498-8c22c9cbf84c">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231" name="tyl:RevenueFromContractWithCustomerContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwMQ_f227370c-2237-429d-ad5d-84836ff26078">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg2OA_bbe6fc68-13b7-4abb-8c69-8e3ba541aaec">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231" name="tyl:SalesCommissionsAmortizationPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM0OA_aaa61222-6e5a-41d4-8f6e-bd9f0f649267">P3Y</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="tyl-20201231.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:context id="i633bb420f8f047a1be8ec7b57b78684a_I20200630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="ibfe4d71b6c1041b4af2b12399ec56c74_I20210217"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-02-17</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if8fa710bd40b4dd590f20c1b4534950e_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i117f5dbfd2ee45b9acfdcbfa8c75576c_D20190101-20191231"><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="id9b96ea2c94741fe9153877de62c6fed_D20180101-20181231"><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="ia8322e4d56da4e2d95685db9396c9692_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ida4f226a38484bfba1d39a6cb3f09899_D20190101-20191231"><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="ifde0f926bfce4fd082aedc3599d56854_D20180101-20181231"><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="i9cc233e615334f518f580b82bb14d73a_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5c7d1b68baf7406fa7740140cec4e452_D20190101-20191231"><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="i321785b37ea747b8879b892dee772d78_D20180101-20181231"><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="i05e1622f629a4425913b1635df4a04e2_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8d10cc1da94440e1b8af4178515524bd_D20190101-20191231"><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="ie9abd07dabb546c6acab4fa6949b3c4e_D20180101-20181231"><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="i1b3f1e3d428e4132927a753977386694_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231"><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="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231"><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="i9a28a06f509941fe98fb7e7fc27c5600_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idb422f10382e4413ae24e0220d77db4f_D20190101-20191231"><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="i33a50375addc42559ace50529545ce43_D20180101-20181231"><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="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"><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="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"><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="i0c0b7e083ecf409aaf3ad6340f8dac46_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib017794e72244d0c9cc15892c74e8e3c_D20190101-20191231"><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="i7a1e475a5ccc40388fdd253f99b09167_D20180101-20181231"><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="i15fbe9bcb6fe49a9b0cab874a05dec3c_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7a62bd11803e475387e6330dddf212cc_D20190101-20191231"><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="ifb5e1296d5644b179f952701425fe1cc_D20180101-20181231"><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: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:context id="id293bf05103a494192d983b0a8bacaab_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iec74e62741324a67999f82c1f1432c6a_I20191231"><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="i2d5b35757f0644f7924170354b92a6bd_I20181231"><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="iaec3f46826db4f818ca92b920242ca81_I20171231"><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="idf223f37a83546f28faf8e1352d1d155_I20171231"><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="i370301866763430c80bdb1dbf9376fd4_I20171231"><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="i84e31879d6de46189bf654c346646ad8_I20171231"><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="i5acd2706ae714def8383f42b3d4180a5_I20171231"><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="id2bf4b9faebc4ff290dc251edf4b6bae_I20171231"><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="i3c70a7aba97846fe9a0bc5653fd1b1a3_D20180101-20181231"><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="i7b6930cb71df41bb9bb8f40e55f1bf01_D20180101-20181231"><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="icae6d928468f4308a26724f751f18e33_D20180101-20181231"><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="if74df7a19c3942cb9ff75a6a5d6f1812_I20181231"><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="ia77fa689a8334d86820dc4579345cd38_I20181231"><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="i016e472e4d6a4a3b833a29b7946751a9_I20181231"><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="i5fc73f07950541c2bc26454cd9193567_I20181231"><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="if63f6f530f2947ac8641e5d47d2459ac_I20181231"><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="i6a4f6e2ccf094812a26851504a3c4697_D20190101-20191231"><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="ic229aec4702c4eedb9420f1f1c7aa168_I20181231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember><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="if652526c5d564fdc83d5d5e0b7cad7ce_I20181231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib2a82e2e40424ebd9aa2d7e4c88c8db6_D20190101-20191231"><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="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"><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="id48ae9bc0d4f4b42a3c41cf57e68c56c_I20191231"><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="i45ce7136c2a8459284d712a29362fee9_I20191231"><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="i9ee1619e595146ed837722870c9abb71_I20191231"><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="iadef3649eac545168fc9afa6d9c92254_I20191231"><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="i7ba5419930ea446ab7a1d368294d235f_I20191231"><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="i3cb7d2d57c82434abafa888df519b0b4_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib7bb27ddbf7242a286b49a1ff342b735_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2d65f7316c4047c5923f4c34f57d2ed8_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id83f6cb9c91c48bfaeb540df6008afe4_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8931e459110d4fb29c212d1c2b0f9f5f_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie663b19deda44df6b80a183376dfde36_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia825caf5f5e84ab497faa2b1f3c68363_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="i64fffae190564776a26bd84c84225be2_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="subsidiary"><xbrli:measure>tyl:subsidiary</xbrli:measure></xbrli:unit><xbrli:context id="i5444796c7d4b449f9947dd51c47222e9_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i63e0a25031e7488d8d1318bfc863ae0e_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia22c2945847d4417af7ec35f1e88400f_D20200101-20201231"><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="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i45505cddc67248faaba02d34cb7979d2_D20200101-20201231"><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="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ife077d9575b74e78be8106979a431594_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id3a0729ea86c4aae9ec5d014190a5e10_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5d0e27ba06b44330b51f456deab73ad4_I20191231"><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="ia9d3c7e5c2de4087baba0361c032ede0_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id4c1cb9adf4046ef95f5f38893efd8ce_I20191231"><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="id13b861c42bc48dfb625053a4d857592_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i94daf233c3194985b62bde30928670a1_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib375b5571fae4e25a902fad22df123ec_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5583ee35a5ab41ebaa53632a5c580575_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibf0996191f544a47aa3252f3c6b8abfa_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i77474ef608ba4afa8feabe57cb359905_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ReportingUnitAxis">tyl:DataAndInsightMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2345196ee5364b50af4122faa02b1455_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ReportingUnitAxis">tyl:CaseManagementBusinessProcessManagementDataAndInsightMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i78dfe745fd3144b0822619031b7bdbde_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i39b2eaa37ed24792a9ca54053db123b6_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tyl:BFTRLLCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ied6f64ee5036457f909b03c8c47daa40_D20191030-20191030"><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="ib380b3b73a1a40f99d813fb62fa45604_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic847e519530c45bf9016c8ff781dcb50_I20190228"><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="i305eac48da0b40218f74de76b1314f83_D20190228-20190228"><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="ic8168101f57449e9a85433dc8290fd6f_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ife54261a0f3d4ca3a8b579d2c9682d64_D20190201-20190201"><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="i9bdc423139fe439faff35cca3d53f67c_D20190101-20191231"><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="i6866bb1920874c24b16f29ca6bede98b_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iac0ae79f1469490a90790daa11e7f2f0_I20191231"><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="icc3a8ea7b5b24160ac5abb90cdf333b9_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2746c1cc021146b0aec5e58779f3076e_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3219e002c83348cab50b0e6ffa6b4191_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if46f51fb226c43048218559f563502a9_I20191231"><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="idb690a8e4d1e40d4b27b724094ce54c9_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i77f680c29cb34a808e25c0b8104d80f5_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i58093d3d479849cfbd2eff31482f9783_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1a65b3cf8d7149d1ade784c3e5c89b3b_I20191231"><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="if88cb4be8f1344d09dfd429816868c60_D20200101-20201231"><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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0835333b1817476fae0b3a5feef10690_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iba8cb413cfd641da91dc0775bb79a227_I20191231"><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="ice971cc672f04378945f87c4139a37f4_D20200101-20201231"><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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i929fdd1b837d46ff933ec52c444aa16b_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id494010e2e764b258a7e6e507f72179a_I20191231"><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="if80f7bfbeee84d0f85fffb52339ed359_I20181231"><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="i73b70e86f2b14fe195929fadc40a68ac_I20181231"><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="i71e9c53e377c4402a13fadc418b82438_D20190101-20191231"><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="i4abbeb24189541c4b6dde107c2f08de9_D20190101-20191231"><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="i5803bdc414da480a9dbe249393f7f1a4_D20190101-20191231"><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="i2e962ad96fae4176955ee8a514f8468e_D20190101-20191231"><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="if3a281d63b5f4808ba90cf0e318a5207_D20190101-20191231"><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="i77f4f7b40a0a4e9c8e60200ae6adb450_D20190101-20191231"><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="i30de2f6d29134baeb9d7fd10ef9c2769_I20191231"><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="i04a262b445d242e0bc9ec15c5b189ca5_I20191231"><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="i1b2789605e86461fb518b096c797b999_D20200101-20201231"><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><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id9eb4c1627904b098348ff6d8e2672a8_D20200101-20201231"><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><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifd8cb8d148054fdaac26c7fe42e99562_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i791885cd70434284b30f7d4168cf471a_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i314ed68cc2a844c397cb8dc976771b9d_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iec288e447c034f6b8cf1ba7b7f05c5e7_I20191231"><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="ieb33b4efea03473594b246452e01b04d_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i619de32472a14447b2ac8bd16d2f248a_I20191231"><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="i3d5e11a6c02b4b31af1d4d6cb20eefc5_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9d3c25ebfdc949c590c6550e4767d78f_I20191231"><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="if76b71899a304e0eb9638dc793cbb1ff_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i12489bfd9ab94c08af9a2cb062f4847b_I20191231"><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="i51e9483e637b4b27ad714b5dd787651c_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0d6fb75fb1f14fd095dad540a4435cd1_I20191231"><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="i85174adb41d4484092b78a7104980b10_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia676244b50ab49529c59c19f228664bc_D20190101-20191231"><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="i07476736cfec4b56a28475a43618cde8_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9b12338499724618a2f10c02c169b31d_D20190101-20191231"><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="i32d834599c984f9ebf196a393bf7b1e1_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie844a30b32d14f259d80645725dfc9e7_D20190101-20191231"><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="i05d88abff85f46cd8730d3d2b41c3a52_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4e10c2b062704e0d89feb98366351063_D20190101-20191231"><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="ib35a4cc09656425db4048e1d9fbfa6a2_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6b228d04c2874010925935400911f3cb_D20190101-20191231"><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="i0b793b88738448c8b424e13b38750dfe_I20190930"><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="i2ba12eae25fc408f819a9460e865b419_I20190930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember><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="i895d9f7aa1c94c2197d32ead27eda95d_D20190930-20190930"><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:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember><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:startDate>2019-09-30</xbrli:startDate><xbrli:endDate>2019-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i08f4d489526345e7985462400385c9e3_D20190930-20190930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</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="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-09-30</xbrli:startDate><xbrli:endDate>2019-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6f87819252ba4d4b8f5ec2969bfc24fd_D20190930-20190930"><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-09-30</xbrli:startDate><xbrli:endDate>2019-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1762aa0ea46e431289b30c6cb3c49679_D20190930-20190930"><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><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-09-30</xbrli:startDate><xbrli:endDate>2019-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibf1b14c92e824bdeac21fa748bda20f6_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id2bea65be2e44fcf810050142e2320ff_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaeffcc8d31f34ceeaaea2f0110344bb9_D20190101-20191231"><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="ia88a5e942ac04b79ae2b9099fbf1302c_D20180101-20181231"><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="i735bb4ff00b6467f8f0a9344f904ca28_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i834e04f05e664eb98c0b0969a7be7291_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1cfd0b0d8fbd448d89aa47c9ae3b2209_I20210219"><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>2021-02-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231"><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="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231"><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="i3fba9c501ecb48488641149b3f3174c2_I20181231"><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="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231"><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="i8dfa0f180b1e4b7ebdd34ac1961839d2_I20191231"><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="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i39a267385f494dce9f4725b6addbb80c_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8dd210d68c10475fad0a0a5e93af1528_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i665a8bb2781c470e99cb87839f7e5fbd_I20191231"><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="iad6cf6f58e5a4d6f96b29477f21b456d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSubscriptionsSoftwareServicesAndMaintenanceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1712ccf082ef466cb02c343fc02b0b8f_D20190101-20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSubscriptionsSoftwareServicesAndMaintenanceMember</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="i113b64d7c6ae4eae9c3aee682d8cecbb_D20180101-20181231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSubscriptionsSoftwareServicesAndMaintenanceMember</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="if10d25a3227f4f4ab01ec8f05f15151e_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ide28a19f9a5d487f854fce9ac2ba02aa_D20190101-20191231"><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="id54b568dfe07484db3ea078954dd5601_D20180101-20181231"><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="i0d6a00f13daa4cdeb46d5ab68209cdda_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib51c378298584fa1a4eb53d795b5740a_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id6b415396bb841e79c9345d0e3300d97_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia7cf9706ae3c466d8639d30b1f7b428c_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="legalmatters"><xbrli:measure>tyl:legalMatters</xbrli:measure></xbrli:unit><xbrli:unit id="business_unit"><xbrli:measure>tyl:business_unit</xbrli:measure></xbrli:unit><xbrli:unit id="segment"><xbrli:measure>tyl:segment</xbrli:measure></xbrli:unit><xbrli:context id="ia6c80417eac74c82ae3468f659ce8266_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia255aed390eb4000a104450972e6ed3c_D20190101-20191231"><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="i5c8db9ebd8254d46a3fbfb6e3f34627f_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i04d0fec5dca84d1c9852fff27dfb4f6f_D20190101-20191231"><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="iaca354e3138d46858d4e955c8c20e471_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id9d1322a873f47e0874e897492712721_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6d22aa1df25346ffadaa95acb43364ae_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2e91e63dcd724a48a90294c512bdd40c_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia40303a553f9437bb075221df8e35cf7_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i374e0b74c71e440c87e9c6d9bb653e9b_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i727d890376f54ff8bd2ec913cded5d8b_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5dba41f479d947b1bdcedc66802333e2_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia5dcc53ef7064bc39ccdcf09f7c79001_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0ea582e38b4e4ddc9c2381a870002d2c_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4c3f6ac328eb45f397df2d21867b655a_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i819fa787e3a94691994562b71e1a4dc0_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8de5a13236e44faf95422dd421c2f236_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6f6ebfcf46af4c81b9123d960fbeaa77_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1392d5cf0be94679bffe21ecce0817c9_D20200101-20201231"><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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i36c9cc8a647c4c7aa42a6200e89ce9fb_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i611ef8f3c31c46738e2b843bf6886bdd_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if8e240b661ce4e0e883b743c3189fc7c_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i72c1e7ba154e47779fc521e3c9800822_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i605bb7a621c94f0a90ad78dcbc8e0b4b_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i993fd2302c8f4b5d9203136c5c02e6e3_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i328eb1e00308488e8fe0cae2086cd019_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i20538c481f6b4f248bfa73e7e3b47cfc_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i80940766fb8a4664b36c530c616fcd77_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia427f4d34826408fa62a3e2007be5010_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i282eeaf0e8dd48b3a2ad2ded16faad06_I20201231"><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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic4a81836cd1c43a2823dd81494bf1b5b_D20190101-20191231"><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: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="i25443b45c9b54bb9a6c7e89b89f04be3_D20190101-20191231"><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: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="i21c91e321aeb4ad5a04e899cf0ceab93_D20190101-20191231"><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="i573d9d38aebc4dfdbedc8aab3002adfc_D20190101-20191231"><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="ie0ad6acaca964ed791bb6bf4fab5acbb_D20190101-20191231"><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: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="i59629cf15db348bb8dd675108c5f4040_D20190101-20191231"><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: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="ief24ed71c8ef43a69aa5c08f4529cb5f_D20190101-20191231"><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="if10392ccfe30424aa582db6c6025dc23_D20190101-20191231"><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: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="i7b1f1b966cee4e208524d3bc0d4f3e66_D20190101-20191231"><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: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="i2cfd1e23f0ab42e2ae01539b75218b9d_D20190101-20191231"><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="i61f524e60a524033b29ca0bda69c4415_D20190101-20191231"><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: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="ib3fc81cd23e74d7f9c4f9f6141480672_D20190101-20191231"><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: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="ic7bdcddffd31491f88bd41ea6719ed4f_D20190101-20191231"><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="i20a02e4e03d94cf5bc97cc747e645e09_D20190101-20191231"><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><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="i3ab6fdc4955541e7b06e731610bda272_D20190101-20191231"><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: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="i98dd2e43677045b0a081fa69828920af_D20190101-20191231"><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="i84af85d3584844cdaef25f135b52d82f_D20190101-20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><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="i933b232be67e40f79aa7f187c9126518_D20190101-20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><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="i5bb54982aaca4482a7035e7887214a6c_D20190101-20191231"><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="if3471d9417bd49cb8b685414796e6c4c_D20190101-20191231"><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="i440f307e20524fe0833637af7678f996_D20190101-20191231"><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="i553e24a2da774e478754fc9c1e57a562_D20190101-20191231"><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="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231"><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="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231"><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="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231"><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="i27a0089f73bf408b9943723e46fe355b_D20190101-20191231"><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="iee9101c9ee6f4be09cb4309ec80b7401_I20191231"><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="i079b5f963ff84613826adf3d7fded19c_I20191231"><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="ib30d32802f7f4c99938c4e05b9fe987a_I20191231"><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="i4521963cbf1640c6965540d7f6d38ab8_D20180101-20181231"><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: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="i8ad21c706fe340cb9411db0681562f68_D20180101-20181231"><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: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="if22553c28ff942cc8e5900fddca936f2_D20180101-20181231"><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="i19dbace2df584044aac5e0ab62024623_D20180101-20181231"><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="i1aad5937099e4a2293e0fd91018fa1eb_D20180101-20181231"><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: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="ic2439b0fb7d841e8a8fa30bdc688de94_D20180101-20181231"><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: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="ibf912bc860774b1dba9ba283a2ce334f_D20180101-20181231"><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="i9135b6e30ab045c5857f81db743a8526_D20180101-20181231"><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: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="ia370f1b7a2554327b41cc1bef94b00c8_D20180101-20181231"><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: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="iacca40e7da7e4ac28f39fbf369fa2bda_D20180101-20181231"><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="ibce7b17045654da981ced9bab9f9753b_D20180101-20181231"><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: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="i4d63ed4bfe8446288616dca9a8ce3c06_D20180101-20181231"><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: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="if53859a5dd8b4597b1777d2394a24258_D20180101-20181231"><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="i40b52fdab1124a808a883826d292e023_D20180101-20181231"><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><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="i6a42dc7ef48349dd82fa838275843264_D20180101-20181231"><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: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="ie996cfde29c94f61817a44c3ceb6f32e_D20180101-20181231"><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="i047127629c7049cdb880cf46de83d3df_D20180101-20181231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><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="if2e4d942719b4859b919fc5353befe4a_D20180101-20181231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><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="i93f0ac5a22db4e12a181e967a69eb477_D20180101-20181231"><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="i1ecdc4e374054062b0adc1f0b6e189e4_D20180101-20181231"><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="i2f4ab1e3f40742478b1505d557c44257_D20180101-20181231"><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="id43e6696fe0f47ada64f765007100613_D20180101-20181231"><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="i66568784bd264412b8ee5a984f047df8_D20180101-20181231"><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="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231"><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="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231"><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="i16e3c72329974206b28447d282141bd9_D20180101-20181231"><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="i5ede29565891475e8788cf9eb6ebd6ff_I20181231"><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="ieab21d0cb4014d989822c3fcf535de9d_I20181231"><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="i5607ea47340b4cfcabdbd3a677fb48f8_I20181231"><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="ic06b075c984748b299e6f90b6ed4dbd9_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idca986a4ea24433283e7eb2ec4c9ef60_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib5758dbecdf24fbc9276380fc8db350f_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i88db4d58db264cdf9a040edd12ab4b64_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie404d1023b2e4f27a09d0d6e417c9d09_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic3521c17bed745d6b7b97aed9032c297_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic74c202358194dc2ad96dca31adeb5c4_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i41624fbe290d47e88764ba29a3f2c7df_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5236921ceff4428a8a1293a8c13b4796_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iafad67b68d36415389e35d95f7d7097c_D20200101-20201231"><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><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5d827cd29e214fba854ce173f1f9f8b9_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia3493665acbb4df4a46e3121f8b28e41_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5ca42f97119049588f2dc1ea31ed561e_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia35003eb05c94ac99fa96195ea44c2b2_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie323bc953efe4028a95d59dd71e1047e_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic4b118fb59224e7682304966b379745f_D20190101-20191231"><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><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="ieb1ea067db4642b9ad657f1c16d2e87b_D20190101-20191231"><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><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="ia9f14bbeed814f11a0ab79e9cb41189b_D20190101-20191231"><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="i60f8e2975f9e41d6ba7f13be6fbf6e99_D20190101-20191231"><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="ie98bb68a93b44965825cb2c8ceae7a4e_D20190101-20191231"><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="i0863c02b7bf64f529669ba0296368dae_D20190101-20191231"><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><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="i1af2984530ee4c29963176b6e39badef_D20190101-20191231"><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><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="iaef736eff1db45f2a0a38f5d6b15c789_D20190101-20191231"><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><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="i3dd06f2547e94523b6b5d770f4d02001_D20190101-20191231"><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><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="ibb72291e8b444df0a6809d0558f0d53e_D20190101-20191231"><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><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="i3228b5ae61374a6a8baff28271dca14c_D20190101-20191231"><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="ice166ef1838d494993ecc175966d9f07_D20190101-20191231"><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="iba59f1fc8ecc47629796b9e30800609c_D20190101-20191231"><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="i456e0b46eec44e44823802fb48496bd1_D20190101-20191231"><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="i0a3ebc400648468d93df88fcabcd5437_D20190101-20191231"><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="id6e79d8a6f8c4624b612ce8ea9a3bba8_D20180101-20181231"><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><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="i8b5e1165a3a64022a70310fa0bd0e834_D20180101-20181231"><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><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="ie296594afadc4d10bbe2a60369ba6444_D20180101-20181231"><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="i30539d66e910450a9aa6513ab82f4549_D20180101-20181231"><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="i5f3e6895f0034ba18a0c1f0a4381ea4d_D20180101-20181231"><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="iefdea658b3624f6c99b1cbbf902bc3bf_D20180101-20181231"><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><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="ia72ad4cced7f45c0be875b7f701ff253_D20180101-20181231"><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><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="if4aa41eda5044f509fa31fac7af47ac9_D20180101-20181231"><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><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="i2330b90e43d64bbd9d882f331f7eac16_D20180101-20181231"><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><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="id1dca31a3fdb466d86ab7d4afe7c1fef_D20180101-20181231"><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><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="i5f9b125c3b6e4455b029d41f0a604cb9_D20180101-20181231"><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="i2e6434c6997f4dfab4a6d963bc641791_D20180101-20181231"><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="id4fc66e631144d6ead9c2a03a1ec2293_D20180101-20181231"><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="iec0771ed002247d3b872c9828fc3893c_D20180101-20181231"><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="i90565bf53615482ab84be82e68a17187_D20180101-20181231"><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="i43a3b3114e4f4b41aa6686085148818c_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i30c7482c204e4d92aa7225c9443ac902_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i13b169af0153481dbfc250ff522efd7d_D20200101-20201231"><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="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5d690ef4857442a99408eaa38571ba81_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia1d04c0f1f004087a9320e951fe51100_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icae667a9c53d4d95895be049af6e1365_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i11f3a0ebc0e442a09083af76d68073e4_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i90394ba33e644132abcc99dfc7c4f81d_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3445a31732f24a65a862d5e005ac762c_D20200101-20201231"><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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8bcb3a63e1184a6da13d229983e0bf8d_D20190101-20191231"><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="i83427b8854304fb8b10c8587f43e5f87_D20190101-20191231"><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="i4a03ecad18d44092b7400425a66cf83a_D20190101-20191231"><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="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="i79b9f8b7c0a143ab89753d72adbc8578_D20190101-20191231"><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="i61a20a8a61cd4df5b764c46f5f2d8976_D20190101-20191231"><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="i684267dd3f8b4ecd95e4c99ced1c2423_D20190101-20191231"><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="iccb7c20612864e26baedec0f83c8ccdf_D20190101-20191231"><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="i618865cb24b84f6d923d028a187de73f_D20190101-20191231"><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="i5e4ab2b44b484480be10536043777e7a_D20190101-20191231"><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="i9e72e38f5be3453282ce5f907d536e8a_D20180101-20181231"><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="i7818d46a5d8b47ecb2ef6aa3aa4d219d_D20180101-20181231"><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="ia5ac0b98eb3b437e9e746b2f7cc5e97c_D20180101-20181231"><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="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="i2f5c8afdaded4119a0134645328601b8_D20180101-20181231"><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="id3a1c250124843d180e37631a9a158a8_D20180101-20181231"><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="i740eecf03fd54d479432ffae3de0a8d1_D20180101-20181231"><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="i3a78d159ac204462baa0ac6a418f3e74_D20180101-20181231"><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="i19d8a060accd40f68cdc69b39f176a15_D20180101-20181231"><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="i7b05d508d00749e2b8162049ad8b5b92_D20180101-20181231"><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="i120a3f6aa2394e6b92280fdbf67605aa_I20201231"><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>2021-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7a521d97296e4b768a29218491f56763_I20210209"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">tyl:NICIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-02-09</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9d9aaefdf6614ee7a787f15a867e2ff1_I20210209"><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><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MergerSubMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-02-09</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i940e5f8f5aaf4e33a5b7c91c0c91720f_I20210209"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tyl:SeniorUnsecuredBridgeLoanFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tyl:GoldmanSachsBankUSAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-02-09</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1148a91f539c4aafbd7013a9683e5513_D20210209-20210209"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">us-gaap:ScenarioPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tyl:SeniorUnsecuredBridgeLoanFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tyl:GoldmanSachsBankUSAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-02-09</xbrli:startDate><xbrli:endDate>2021-02-09</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i70b33b6ad040497281f685b30659ca9b_D20210209-20210209"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">tyl:NICIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-02-09</xbrli:startDate><xbrli:endDate>2021-02-09</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4dd4939787814ee1882916c40a917011_D20200701-20200930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-07-01</xbrli:startDate><xbrli:endDate>2020-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-04-01</xbrli:startDate><xbrli:endDate>2020-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231"><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="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930"><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="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630"><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="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331"><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></ix:resources></ix:header></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_1"></div><div style="min-height:9pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:5pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:700;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">WASHINGTON, D.C. 20549</span></div><div style="margin-bottom:5pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:18.472%"><tr><td style="width:1.0%"></td><td style="width:53.787%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:44.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:3pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:700;line-height:100%">FORM</span></div></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:DocumentType" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6NDgxNTY0NjMxZmMzNGJmYWI5YzdkNDNlMDdlYjQ4Y2MvdGFibGVyYW5nZTo0ODE1NjQ2MzFmYzM0YmZhYjljN2Q0M2UwN2ViNDhjY18wLTEtMS0xLTA_fd76236b-803e-418a-8dd6-6b05001e760e">10-K</ix:nonNumeric></span></div></td></tr></table></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.861%"><tr><td style="width:1.0%"></td><td style="width:5.342%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:92.458%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt:booleantrue" name="dei:DocumentAnnualReport" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YTM0Zjk1MDY4NWVlNGQ3YTgxODlkNTZiMjg4MTM5N2MvdGFibGVyYW5nZTphMzRmOTUwNjg1ZWU0ZDdhODE4OWQ1NmIyODgxMzk3Y18wLTAtMS0xLTA_d433c48e-85f0-41f7-880a-2b4328cb92f6">&#9746;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES AND EXCHANGE ACT OF 1934</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">   For the Fiscal Year Ended <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt:datemonthdayyearen" name="dei:DocumentPeriodEndDate" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8xMTU_f3b7ed57-deed-4f51-b4b9-5666406152a8"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt:datemonthdayen" name="dei:CurrentFiscalYearEndDate" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8xMTU_865dc2c0-44b8-40a0-9872-0783b2a61d01">December 31</ix:nonNumeric>, 2020</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">OR</span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.861%"><tr><td style="width:1.0%"></td><td style="width:5.342%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:92.458%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt:booleanfalse" name="dei:DocumentTransitionReport" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6MDg1MGM5MjcyOThkNGYxMzlkMWFlNDhkOTdlZWQwMjYvdGFibGVyYW5nZTowODUwYzkyNzI5OGQ0ZjEzOWQxYWU0OGQ5N2VlZDAyNl8wLTAtMS0xLTA_8c9d31eb-08af-4b34-9713-66b7bbe85775">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Commission File Number <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityFileNumber" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODYx_155e3d0a-ee66-4223-bf5e-03d39c0821dc">1-10485</ix:nonNumeric> </span></div><div style="margin-bottom:5pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:48.333%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityRegistrantName" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6OTA1ZWZiMTBhZjczNDRmMThjMzI4M2M4ZmRjMzQzZmIvdGFibGVyYW5nZTo5MDVlZmIxMGFmNzM0NGYxOGMzMjgzYzhmZGMzNDNmYl8wLTAtMS0xLTA_299e62be-22f4-453d-b333-953a2e17845b">TYLER TECHNOLOGIES, INC.</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Exact name of registrant as specified in its charter)</span></td></tr></table></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:89.305%"><tr><td style="width:1.0%"></td><td style="width:25.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:25.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.712%"></td><td style="width:0.1%"></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8wLTAtMS0xLTA_583fe928-ba7c-4c5c-a40b-8b8a91535557">Delaware</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityTaxIdentificationNumber" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8wLTItMS0xLTA_b51e30d9-dc02-42e1-95c2-0fa699136de4">75-2303920</ix:nonNumeric></span></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(State or other jurisdiction of incorporation</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">or organization)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(I.R.S. employer<br/>identification no.)</span></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityAddressAddressLine1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8yLTAtMS0xLTA_af240e07-a716-45f1-bc30-7a2074d61c20">5101 Tennyson Parkway</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityAddressCityOrTown" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8zLTAtMS0xLTA_88752307-8b3f-48ff-b526-81fa2de04fc0">Plano,</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt-sec:stateprovnameen" name="dei:EntityAddressStateOrProvince" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8zLTEtMS0xLTA_23d6b1d2-128d-4a32-9c9c-1b0959bbca16">Texas</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityAddressPostalZipCode" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8zLTItMS0xLTA_48af70c5-b242-4768-885e-5e883bb09d6f">75024</ix:nonNumeric></span></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(Address of principal executive offices)</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(Zip code)</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Registrant&#8217;s telephone number, including area code: (<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:CityAreaCode" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY2_35eb614e-b25b-45aa-bfb9-a19cdc1af888">972</ix:nonNumeric>)&#160;<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:LocalPhoneNumber" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY3_0ba97072-c733-4a1c-9db3-cf9cb441be03">713-3700</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">__________________________________</span></div><div style="margin-top:3pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Securities registered pursuant to Section&#160;12(b) of the Act:</span></div><div style="margin-bottom:5pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.777%"><tr><td style="width:1.0%"></td><td style="width:34.837%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:28.871%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:32.992%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Title of each class</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Trading symbol</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Name of each exchange</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">on which registered</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:Security12bTitle" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6NDJlZTE3YTk2Yjg2NDQ5YTk0NmJkMjFlMzdiM2Y2YTcvdGFibGVyYW5nZTo0MmVlMTdhOTZiODY0NDlhOTQ2YmQyMWUzN2IzZjZhN18xLTAtMS0xLTA_4cf3005c-2a2b-4012-838a-8055e6bdb90d">COMMON STOCK, $0.01 PAR VALUE</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:TradingSymbol" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6NDJlZTE3YTk2Yjg2NDQ5YTk0NmJkMjFlMzdiM2Y2YTcvdGFibGVyYW5nZTo0MmVlMTdhOTZiODY0NDlhOTQ2YmQyMWUzN2IzZjZhN18xLTEtMS0xLTA_cd8a56fd-9657-4486-8d9f-c6a8a3f34464">TYL</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6NDJlZTE3YTk2Yjg2NDQ5YTk0NmJkMjFlMzdiM2Y2YTcvdGFibGVyYW5nZTo0MmVlMTdhOTZiODY0NDlhOTQ2YmQyMWUzN2IzZjZhN18xLTItMS0xLTA_30fc669f-981f-4486-bdaa-d0ea56e2cf32">New York Stock Exchange</ix:nonNumeric></span></td></tr></table></div><div style="margin-top:4pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Securities registered pursuant to Section&#160;12(g) of the Act:</span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:18.472%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">NONE</span></td></tr></table></div><div style="text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#9744;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160; <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityWellKnownSeasonedIssuer" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODYy_262d2d6a-043a-4033-ba29-40dc0d2b20dd">No</ix:nonNumeric>&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9746;</span></div><div style="text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#9744;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160; <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityVoluntaryFilers" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY4_927bf8dd-dcc1-4447-8fe9-4171f023bfcc">No</ix:nonNumeric>&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9746;</span></div><div style="text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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;<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityCurrentReportingStatus" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY5_7cf333e4-944f-4f37-bf97-e5c60a33b3a3">Yes</ix:nonNumeric>&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#9744;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160; No&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9746;</span></div><div style="text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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;<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:EntityInteractiveDataCurrent" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY1_0b06366f-bf39-4a5b-8dd2-be6cc0b82f89">Yes</ix:nonNumeric>&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#9744;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">             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="margin-bottom:5pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:90.972%"><tr><td style="width:1.0%"></td><td style="width:44.854%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.700%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.625%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.106%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.480%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.106%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt-sec:entityfilercategoryen" name="dei:EntityFilerCategory" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6MjA5ZDJkODRmNDVjNDE0YmI2Njc2YThlODk3ODNjOWUvdGFibGVyYW5nZToyMDlkMmQ4NGY0NWM0MTRiYjY2NzZhOGU4OTc4M2M5ZV8wLTAtMS0xLTA_4048d2e8-b1d9-4bfb-8af7-492090419c68">Large accelerated filer</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#9746;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accelerated&#160;Filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#9744;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-accelerated Filer (Do not check if smaller reporting company)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Smaller&#160;Reporting&#160;Company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt:booleanfalse" name="dei:EntitySmallBusiness" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6MjA5ZDJkODRmNDVjNDE0YmI2Njc2YThlODk3ODNjOWUvdGFibGVyYW5nZToyMDlkMmQ4NGY0NWM0MTRiYjY2NzZhOGU4OTc4M2M5ZV8yLTYtMS0xLTA_3e947fae-a9c4-4b6d-ac1d-81894a667f3d">&#9744;</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Emerging Growth Company</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt:booleanfalse" name="dei:EntityEmergingGrowthCompany" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6MjA5ZDJkODRmNDVjNDE0YmI2Njc2YThlODk3ODNjOWUvdGFibGVyYW5nZToyMDlkMmQ4NGY0NWM0MTRiYjY2NzZhOGU4OTc4M2M5ZV8zLTYtMS0xLTA_38b998ab-d5de-4808-9242-c35a171f61ca">&#9744;</ix:nonNumeric></span></td></tr><tr><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">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></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#9744;</span></td></tr></table></div><div style="margin-bottom:4pt;margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">          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 style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#9744;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt:booleanfalse" name="dei:EntityShellCompany" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yNzQ4Nzc5MDcyMzQw_63134ef7-ced0-472e-904c-d7ce1a0f2404">&#9746;</ix:nonNumeric></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:115%">          Indicate by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report Yes </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:115%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt:booleantrue" name="dei:IcfrAuditorAttestationFlag" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yNzQ4Nzc5MDczMzk2_93a7ee09-718a-414a-856e-dc0c01bc8fa3">&#9746;</ix:nonNumeric></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:115%">    No </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:115%">&#9744;</span></div><div style="margin-bottom:4pt;margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">The aggregate market value of the voting stock held by non-affiliates of the registrant was $<ix:nonFraction unitRef="usd" contextRef="i633bb420f8f047a1be8ec7b57b78684a_I20200630" decimals="0" format="ixt:numdotdecimal" name="dei:EntityPublicFloat" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yMzU0_ba67c5d5-ba29-4c33-9995-3b614b3d56d9">13,728,101,720</ix:nonFraction> based on the reported last sale price of common stock on June&#160;30, 2020, which is the last business day of the registrant&#8217;s most recently completed second fiscal quarter.</span></div><div style="margin-bottom:4pt;margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">          The number of shares of common stock of the registrant outstanding on February&#160;17, 2021 was <ix:nonFraction unitRef="shares" contextRef="ibfe4d71b6c1041b4af2b12399ec56c74_I20210217" decimals="INF" format="ixt:numdotdecimal" name="dei:EntityCommonStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yNjAz_63d2f2a0-0615-4d67-8889-f65f8c84b06f">40,576,730</ix:nonFraction></span></div><div style="margin-top:3pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:120%">DOCUMENTS INCORPORATED BY REFERENCE</span></div><div style="margin-top:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">         <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="dei:DocumentsIncorporatedByReferenceTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY0_3f89081b-bc5a-409e-9416-2f5cc8055e6c" 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;11, 2021.</ix:nonNumeric></span></div><div style="margin-bottom:5pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="height:9pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_7"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">TYLER TECHNOLOGIES, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORM 10-K</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">TABLE OF CONTENTS</span></div><div style="margin-bottom:5pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:7.233%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:84.038%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.429%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">PAGE</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_10">PART I</a></span></div></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item&#160;1.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_13">Business</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_13">3</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item&#160;1A.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_16">Risk Factors</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_16">11</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 1B.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_19">Unresolved Staff Comments</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_19">18</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 2.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_22">Properties</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_22">18</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 3.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_25">Legal Proceedings</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_25">18</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 4.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_28">Submission of Matters to a Vote of Security Holders</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_28">18</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_31">PART II</a></span></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 5.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_34">Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_34">19</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 6.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_37">Selected Financial Data</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_37">20</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 7.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_40">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_40">21</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 7A.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_61">Quantitative and Qualitative Disclosures about Market Risk</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_61">36</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 8.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_64">Financial Statements and Supplementary Data</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_64">36</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 9.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_67">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_67">36</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 9A.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_70">Controls and Procedures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_70">37</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 9B.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_73">Other Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_73">37</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_76">PART III</a></span></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 10.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_79">Directors, Executive Officers and Corporate Governance</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_79">38</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 11.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_82">Executive Compensation</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_82">38</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 12.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_85">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_85">38</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 13.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_88">Certain Relationships and Related Transactions, and Director Independence</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_88">38</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 14.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_91">Principal Accounting Fees and Services</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_91">38</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_94">PART IV</a></span></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Item 15.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_97">Exhibits, Financial Statement Schedules</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_97">39</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_100">Signatures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_100">41</a></span></div></td></tr></table></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_10"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:12pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PART I</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_13"></div><div style="margin-top:12pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 1.&#160;&#160;&#160;&#160;BUSINESS.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">DESCRIPTION OF BUSINESS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">MARKET OVERVIEW</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 12,900 school districts. This market is also comprised of approximately 38,000 special districts and other agencies, each with specialized delegated responsibilities and unique information management requirements.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 $19.5 billion in 2021 to $25.1 billion in 2024. The professional services and support segments of the market are expected to expand from $29.0 billion in 2021 to $33.5 billion in 2024. 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 2021 to $4.3 billion in 2024 while professional services and support are expected to grow from $3.0 billion in 2021 to $3.7 billion in 2024.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PRODUCTS AND SERVICES</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Sales of software licenses and royalties</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Subscription-based arrangements</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Software services</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Maintenance and support</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Appraisal services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Financial Management and Education</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Courts and Justice</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Public Safety</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Property Appraisal and Tax</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Planning, Regulatory and Maintenance</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Land and Vital Records Management</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Data and Insights</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Platform Technologies</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A description of our suites of products and services follows:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Software Licenses</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financial Management and Education</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Courts and Justice</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Public Safety</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. Our 911 / CAD solutions dramatically improve performance, response time and unit safety.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. Our public safety records management solutions enable easy access to information and simplify reporting.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Property Appraisal and Tax</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Planning, Regulatory and Maintenance</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Land and Vital Records Managemen</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">t</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Data and Insights</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Platform Technologies</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">6</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Subscription-Based Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 primarily relate to online payment services, which are offered with the assistance of third-party vendors, and online dispute resolution solutions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Software Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We provide a variety of professional 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Maintenance and Support</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Appraisal Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are the nation&#8217;s largest provider of property appraisal outsourcing services for local government taxing authorities. These services include:</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The physical inspection of commercial and residential properties</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Data collection and processing</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Sophisticated computer analyses for property valuation</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Preparation of tax rolls</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Community education regarding the assessment process</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Arbitration between taxpayers and the assessing jurisdiction</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">7</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">STRATEGY</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Provide high quality, value&#8211;added products and services to our clients</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Continue to expand our product and service offerings</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Expand our client base</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Expand our existing client relationships</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Grow recurring revenues</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. We have a large recurring revenue base from maintenance and support and subscription-based services, which generated revenues of $818.2 million, or 73% of total revenues, in 2020. We have historically experienced very low customer turnover (approximately 2% 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 $142.7 million in 2016 to $350.6 million in 2020.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Maximize economies of scale and take advantage of financial leverage in our business</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Attract and retain highly qualified employees</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Pursue selected strategic acquisitions</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">8</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">New products and services to complement our existing offerings</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Entry into new markets related to the public sector</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">New clients and/or geographic expansion</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt;text-decoration:underline">Establish strategic alliances</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SALES, MARKETING AND CLIENTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 2020, approximately 42% of our revenue was attributable to ongoing support and maintenance agreements.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">COMPETITION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SUPPLIERS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">9</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">BACKLOG</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2020, our revenue backlog was approximately $1.59 billion, compared to $1.46 billion at December&#160;31, 2019. The backlog generally represents signed contracts under which the revenue has not been recognized as of year-end. Approximately $780.0 million, or 49%, of the backlog is expected to be recognized during 2021.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INTELLECTUAL PROPERTY, PROPRIETARY RIGHTS, AND LICENSES</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">HUMAN CAPITAL RESOURCES</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Human Capital</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The strength of our team is one of the most significant contributors to our success in empowering the public sector to create smarter, safer, and stronger communities.  Our effectiveness in attracting, developing, engaging and retaining talented team members, many of whom spend the majority of their careers at Tyler serving our public sector clients, demonstrates our commitment to providing a welcoming and safe workplace, with equitable compensation, benefits and opportunities for our team members to continually grow and develop their careers within Tyler. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 2020, we had approximately 5,500 team members. Approximately 250 of these team members are located in Canada and the Philippines; the remainder work remotely in the U.S. or are based in one of our nearly 50 U.S. offices. No Tyler employees are represented by unions. We believe our efforts in managing and supporting our workforce are effective, as evidenced by current levels of applicants, team member tenure, and high levels of engagement reported through continuous survey feedback from Tyler team members. The COVID-19 pandemic had a significant impact on our human capital management practices as the majority of our workforce pivoted to work remotely in March 2020. Our team quickly adjusted to remotely develop for, sell to, implement and support our public sector clients.  </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At the end of 2020, Tyler&#8217;s U.S. workforce was 63% male and 37% female, and women represented 19% of Tyler&#8217;s leadership. In the U.S. our workforce was comprised as follows: 76% White, 8% Asian, 4% Hispanic or Latino, 5% Black or African American, and 7% Other. For our U.S. leadership, the breakdown was 86% White, 5% Asian, 3% Hispanic or Latino, 3% Black or African American, and 3% Other. We define leadership as positions which are one or two levels removed from our CEO with management responsibility. Race and gender reporting are based on information provided by team members. Voluntary workforce turnover (rolling 12-month attrition) was 6.5% as of December 31, 2020. The average tenure of our team members is approximately seven years and approximately 27% of our employees have been employed by Tyler for more than ten years. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Investments in Talent</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are committed to providing Tyler team members with the training and resources necessary to continually strengthen their skills.  Our talent assessment and development programs provide managers and employees with the resources needed to achieve career goals, build management skills and lead their teams. Our TylerU online training platform provides team members with opportunities for continuous learning, professional training and development. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Oversight and Management </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our Human Resources organization is tasked with leading our organization in managing employment-related matters, including recruiting and hiring, onboarding and training, compensation planning, talent management and development. Our executive team is responsible for periodically reviewing team member programs and initiatives, including healthcare and other benefits, as well as our management development and succession planning practices. Management periodically reports to the Board and its committees human capital measures and results that guide how we attract, retain and develop a workforce to enable our business strategies. </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Health &amp; Safety</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We invest in the well-being of Tyler team members and their families.  We provide a range of offerings in support of mental and emotional, financial, and physical health and wellness &#8211; not only for our team members, but also for the family members who depend on them. The </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">COVID-19 </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">pandemic created stressful conditions in 2020. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In response to the pandemic, we implemented significant changes that we determined were in the best interest of our employees, including moving the vast majority of our employees to work from home, while implementing additional safety measures for employees continuing critical on-site work. In addition to safety protocols and the establishment of local site Return-To-Office teams, we:</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:11.07pt">Introduced enhanced mental health benefits and resources for team members and their families through our employee assistance programs in the U.S., Canada and the Philippines</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Covered telehealth visits for medical and mental health services at 100% </span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:11.07pt">Provided coverage of all COVID-19 testing and treatment under all Company medical plans at no cost to employees and dependents</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Provided unlimited paid time off for any team member who was awaiting or had received a positive COVID-19 test result or was unable to perform their duties from home, whether due to the nature of their work or a client request.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Diversity and Inclusion</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe that a diverse workforce is critical to our success, and we continue to monitor and improve the application of our hiring, retention, compensation and advancement processes for women and underrepresented populations across our workforce, including our team members of color, veterans and those who are LGBTQ. Our Women&#8217;s Leadership Network, Veteran&#8217;s Affinity groups, and local office diversity councils, among other programs, serve to enhance our inclusive and diverse culture. We continue to invest in recruiting diverse technical talent, in part through our partnership with the Ada Developer&#8217;s Academy, a non-profit, tuition-free coding school for women and gender diverse adults.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, our diversity, equity and inclusion (DEI) efforts included focused DEI discussions at the executive and local team levels, assessment of DEI effectiveness across the HR lifecycle, hiring manager training, the development of a Women&#8217;s Leadership Mentoring program, and support and advocacy for local DEI councils at Tyler. We encourage you to review our 2020 Corporate Responsibility Report located at http://www.tylertech.com for more detailed information regarding our Human Capital programs and initiatives. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INTERNET WEBSITE AND AVAILABILITY OF PUBLIC FILINGS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 id="i8b7048d9282b49808c9b0dc46622e6f3_16"></div><div style="margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 1A.&#160;&#160;&#160;&#160;RISK FACTORS.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Risks Associated with Our Software Products</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cyber-attacks and security vulnerabilities can disrupt our business and harm our competitive position.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. Despite the network and application security, internal control measures, and physical security procedures we employ to safeguard our systems, we may still be vulnerable to a security breach, intrusion, loss or theft of confidential client data and transaction data or proprietary company information, which may harm our business, reputation and future financial results. The lost revenue and containment, remediation, investigation, legal and other costs could be significant and may exceed our insurance policy limits or may not be covered by insurance at all. Further, we may be subject to regulatory enforcement actions and litigation that could result in financial judgments or the payment of settlement amounts, and disputes with insurance carriers concerning coverage.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September 29, 2020, we filed a Current Report on Form 8-K reporting a security incident (the "Incident") involving ransomware disrupting access to some of our internal IT systems and telephone systems. There is no evidence that the environments where we host client applications were affected, and our hosting services to those clients were not interrupted.  There is also no evidence of malicious activity on client networks associated with the Incident. We contained the Incident and recovered from it, resuming normal operations with our clients. We will continue to deploy supplemental remediation efforts as necessary. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As part of our immediate response to the Incident, we (1) shut down points of access to external systems and began investigating and remediating the problem; (2) engaged outside IT security and forensics experts to conduct a detailed review and help securely restore affected systems; (3) implemented targeted monitoring systems to supplement the systems we already had in place; and (4) notified law enforcement. We have cooperated with their investigation throughout. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We promptly notified our clients of the Incident and provided timely updates to our clients through direct communications and updates to our website. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Although we believe we have contained and recovered from the Incident, and that we have taken and will continue to take appropriate remediation steps, we are subject to risk and uncertainties as a result of the Incident. We believe we are in the final phases of our investigation, but there can be no assurance as to what the ongoing impact of the Incident will be, if any. The Incident caused an interruption in parts of our business. We incurred $4.2 million in third party costs associated with the Incident as of December&#160;31, 2020.  It is expected that we will continue to incur costs related to our response, remediation, and investigatory efforts relating to the Incident. We maintain cybersecurity insurance coverage in an amount that we believe is adequate.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Disclosure of personally identifiable information and/or other sensitive client data could result in liability and harm our reputation.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">12</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Hosting services for some of our products are dependent upon the uninterrupted operation of data centers.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">We run the risk of errors or defects with new products or enhancements to existing products.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">We must timely respond to technological changes to be competitive.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">We may be unable to protect our proprietary rights.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Clients may elect to terminate our maintenance contracts and manage operations internally.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:174%">Material portions of our business require the Internet infrastructure to be reliable.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Risks Associated with Selling Products and Services into the Public Sector Marketplace</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Selling products and services into the public sector poses unique challenges.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Resource limitations caused by budgetary constraints, which may provide for a termination of executed contracts due to a lack of future funding</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Long and complex sales cycles</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Political resistance to the concept of contracting with third parties to provide IT solutions</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Legislative changes affecting a local government&#8217;s authority to contract with third parties</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Varying bid procedures and internal processes for bid acceptance</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Various other political factors, including changes in governmental administrations and personnel</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">COVID-19 will adversely affect our business and results of operations.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We expect that the continued global spread of COVID-19 (novel coronavirus) will negatively impact our business and financial results in fiscal year 2021. As the virus has spread, it has resulted in authorities implementing numerous measures to contain the virus, including travel bans and restrictions, quarantines, shelter-in-place orders, and business limitations and shutdowns. </span><span style="color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While we are unable</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to accurately predict the full impact that COVID-19 will have on our results from operations, financial condition, liquidity and cash flows due to numerous uncertainties, including the duration and severity of the pandemic and containment measures and associated compliance, we do expect the pandemic will continue to negatively impact our revenues and other financial results.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Because an increasing portion of our revenues are recurring, the effect of COVID-19 on our results of operations may also not be fully reflected for some time. We continue to see some impact on our business in the near term with delays in government procurement processes and uncertainty around public sector budgets, as well as delays in implementations caused by travel restrictions, closed offices, or clients shifting focus to more pressing issues.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We expect appraisal and software implementations projects to be delayed as clients put projects on hold or slow projects by extending go-live dates. While we have the ability to deliver most of our professional services remotely, some of our professional services, including appraisal assessments, are more effective when performed on-site, and certain clients may continue to insist on on-site services in any event. In addition, some professional services relate to training and require the availability of the client. We expect a negative impact on our software services and appraisal services revenues. Also, we expect software licenses and subscriptions revenues to be negatively affected due to delays in procurement processes. Some clients could request changes to payment terms, negatively impacting the timing of collections of accounts receivables in future periods. For the twelve months ended December&#160;31, 2020, 73% of our total revenue and earnings are relatively predictable as a result of our subscription and maintenance revenue, which is recurring in nature; thus the effect of the COVID-19 pandemic will not be fully reflected in our results of operations and overall financial performance until future periods.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We perform our annual goodwill impairment analysis as of the first day of the second quarter of each year. Subsequent to our annual goodwill impairment analysis, we monitor for any events or changes in circumstances, such as significant adverse changes in business climate or operating results, changes in management&#8217;s business strategy, an inability to successfully introduce new products in the </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">14</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">marketplace, an inability to successfully achieve internal forecasts or significant declines in our stock price, which may represent an indicator of impairment. The occurrence of any of these events, which could be caused or impacted by the COVID-19 pandemic, may require us to record future goodwill impairment charges.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">A prolonged economic slowdown could harm our operations.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">The open bidding process creates uncertainty in predicting future contract awards.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">We face significant competition from other vendors and potential new entrants into our markets.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The attractiveness of our &#8220;evergreen&#8221; business strategy</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The breadth, depth, and quality of our product and service offerings</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The ability to modify our offerings to accommodate particular clients&#8217; needs</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Technological innovation</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Name recognition, reputation and references</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Price</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Our financial strength and stability</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fixed-price contracts may affect our profits.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our contracts are structured on a fixed-price basis, which can lead to various risks, including:</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The failure to accurately estimate the resources and time required for an engagement</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">15</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The failure to effectively manage our clients&#8217; expectations regarding the scope of services delivered for a fixed fee</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The failure to timely and satisfactorily complete fixed-price engagements within budget</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Changes in the insurance markets may affect our business.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 and/or restrictive coverage trends, which may lead to future increases in our general and administrative expenses and negatively impact our operating results.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Risks Associated with Our Periodic Results and Stock Price</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fluctuations in quarterly revenue could adversely impact our operating results and stock price.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Prospective clients&#8217; contracting decisions are often made in the last few weeks of a quarter</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The size of license transactions can vary significantly</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Clients may unexpectedly postpone or cancel procurement processes due to changes in strategic priorities, project objectives, budget, or personnel</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">We may have to defer revenues under our revenue recognition policies and GAAP</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">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><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Increases in service revenue as a percentage of total revenues could decrease overall margins.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Increases in investment in research and development could decrease overall margins. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 and research and development expenses could adversely affect operating margins.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Our stock price may be volatile.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The market price of our common stock may be volatile. Examples of factors that may significantly impact our stock price include:</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">16</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Actual or anticipated fluctuations in our operating results</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Announcements of technological innovations, new products, or new contracts by us or our competitors</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Developments with respect to patents, copyrights, or other proprietary rights</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Conditions and trends in the software and other technology industries</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Adoption of new accounting standards</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Changes in financial estimates by securities analysts</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">General market conditions and other factors</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Our financial outlook may not be realized.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Risks Associated with Our Growth Strategy and Other General Corporate Risks</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">We may experience difficulties in executing our acquisition strategy.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Our failure to properly manage growth could adversely affect our business.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">We may be unable to hire, integrate, and retain qualified personnel.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Compliance with changing regulation of corporate governance may result in additional expenses.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">17</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 across the various states and at the federal level are difficult to predict and/or harmonize. To maintain high standards of corporate governance, compliance, and public disclosure, we intend to invest all reasonably necessary resources to comply with evolving standards.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 style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">We don&#8217;t foresee paying dividends on our common stock.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Provisions in our certificate of incorporation, bylaws, and Delaware law could deter takeover attempts.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 id="i8b7048d9282b49808c9b0dc46622e6f3_19"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 1B.&#160;&#160;&#160;&#160;UNRESOLVED STAFF COMMENTS.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not applicable.</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_22"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 2.&#160;&#160;&#160;&#160;PROPERTIES.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We occupy a total of approximately 1.1 million square feet of office space, of which approximately 746,000 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, Connecticut, Georgia, Illinois, 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, the Philippines and the Bahamas.</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_25"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 3.&#160;&#160;&#160;&#160;LEGAL PROCEEDINGS.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 id="i8b7048d9282b49808c9b0dc46622e6f3_28"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 4.&#160;&#160;&#160;&#160;SUBMISSION OF MATTERS TO A VOTE OF SECURITY HOLDERS.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not applicable.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">18</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_31"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PART II</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_34"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 5.&#160;&#160;&#160;&#160;MARKET FOR REGISTRANT&#8217;S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our common stock is traded on the New York Stock Exchange under the symbol &#8220;TYL&#8221;. At December&#160;31, 2020, we had approximately 1,143 stockholders of record. Most of our stockholders hold their shares in street name; therefore, there are substantially more than 1,143 beneficial owners of our common stock.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We did not pay any cash dividends in 2020 or 2019. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020.</span></div><div style="margin-bottom:14pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:44.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.894%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.401%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Number of securities to</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">be issued upon exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">of outstanding options, warrants, purchase rights</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">and vesting of restricted stock units as of</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December&#160;31, 2020</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average<br/>exercise price of outstanding options<br/>and unvested restricted stock units</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Number of securities remaining available for</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">future issuance under</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">equity compensation</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">plans (excluding securities reflected in initial column</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">as of December&#160;31, 2020)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Plan Category</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Equity compensation plans</span></div><div style="padding-left:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">approved by security</span></div><div style="padding-left:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">shareholders:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018 Incentive Stock Plan </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,763,414&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">203.05&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,480,878&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Employee Stock Purchase Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,186&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">371.04&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">663,502&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Equity compensation plans not</span></div><div style="padding-left:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">approved by security</span></div><div style="padding-left:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">shareholders</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,771,600&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">203.55&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,144,380&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had authorization to repurchase up to approximately 2.5 million additional shares of Tyler common stock. During 2020, we purchased approximately 59,000 shares of our common stock for an aggregate purchase price of $15.5 million. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of the repurchase activity during 2020 is as follows:</span></div><div style="margin-bottom:14pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:85.277%"><tr><td style="width:1.0%"></td><td style="width:45.968%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.940%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.929%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.614%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.929%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.614%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.160%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.614%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.932%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Period</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total number of shares repurchased</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Additional number of shares authorized that may be repurchased</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Average price paid per share</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maximum number of shares that may be repurchased under current authorization</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three months ended March 31</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">58,804&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">263.26&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,505,472&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three months ended June 30</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,505,472&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three months ended September 30</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">361.19&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,505,465&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">October 1 through October 31</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,505,465&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">November 1 through November 30</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,505,465&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 1 through December 31</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,505,465&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">58,811&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">263.27&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of February&#160;19, 2021, we had remaining authorization to repurchase up to 2.5 million additional shares of our common stock. </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:12pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Performance Graph</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2015. 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="margin-top:12pt;text-align:center"><img src="tyl-20201231_g1.jpg" alt="tyl-20201231_g1.jpg" style="height:466px;margin-bottom:5pt;vertical-align:text-bottom;width:720px"/></div><div style="margin-bottom:5pt;margin-top:17pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:96.111%"><tr><td style="width:1.0%"></td><td style="width:37.194%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.582%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.582%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.582%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.582%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.582%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.586%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Company / Index</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12/31/15</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12/31/16</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12/31/17</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12/31/18</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12/31/19</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12/31/20</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Tyler Technologies, Inc.</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">81.90&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">101.57&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">106.60&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">172.11&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">250.41&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">S&amp;P 500 Stock Index</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">111.96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">136.40&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">130.42&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">171.49&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">203.04&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">S&amp;P 600 Information Technology Index</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">133.85&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">147.62&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">134.43&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">187.65&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">239.83&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_37"></div><div style="margin-top:12pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 6.</span></div><div style="margin-top:12pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">This section has been eliminated as a result of adopting the November 19, 2020 amendment to Item 301 of Regulation S-K.&#160;&#160;&#160;&#160;</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">20</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_40"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:12pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 7.&#160;&#160;&#160;&#160;MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following discussion and analysis should be read in conjunction with our consolidated financial statements and related notes included in Item 8 of this Annual Report on Form 10-K. For a comparison of our Results of Operations for the years ended December 31, 2019 and 2018 and our Cash Flow discussion for the year ended December 2019, see &#8220;Part II, Item 7. Management's Discussion and Analysis of Financial Conditions and Results of Operations&#8221; of our Annual Report on Form 10-K for the year ended December 2019 as filed with the SEC on February 20, 2020.</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_43"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">FORWARD-LOOKING STATEMENTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">This document contains &#8220;forward-looking statements&#8221; within the meaning of Section 27A of the Securities Act of 1933 and Section 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. 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) the effects of the COVID-19 pandemic, including its potential effects on the economic environment, our customers and our operations, as well as any changes to federal, state or local government laws, regulations or orders in connection with the pandemic; (2) changes in the budgets or regulatory environments of our clients, primarily local and state governments, that could negatively impact information technology spending; (3) disruption to our business and harm to our competitive position resulting from cyber-attacks and security vulnerabilities; (4) our ability to protect client information from security breaches and provide uninterrupted operations of data centers; (5) our ability to achieve growth or operational synergies through the integration of acquired businesses, while avoiding unanticipated costs and disruptions to existing operations; (6) material portions of our business require the Internet infrastructure to be adequately maintained; (7) 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; (8) general economic, political and market conditions; (9) technological and market risks associated with the development of new products or services or of new versions of existing or acquired products or services; (10) 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; (11) 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 (12) 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 1A, &#8220;Risk Factors&#8221;. We expressly disclaim any obligation to publicly update or revise our forward-looking statements.</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_46"></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">OVERVIEW</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">General</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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) platform technologies.&#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, data and insights and platform technologies. 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, land and vital records management 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 style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">21</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;T segments have been adjusted to reflect the segment change. See Note 14 - "Segment and Related Information" in the notes to the consolidated financial statements for additional information. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the twelve months ended December&#160;31, 2020, total revenues increased 2.8% compared to the prior year.&#160;Excluding the impact of acquisitions, total revenues increased 1.4% compared to prior year.  Revenues from acquisitions contributed 1.4% of growth for the twelve months ended December&#160;31, 2020. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subscriptions revenue grew 18.3% for the twelve months ended December&#160;31, 2020, due to a gradual shift toward cloud-based, software as a service business, as well as continued strong growth in our transaction-based revenues from online payments and e-filing revenues from courts. Excluding the impact of recent acquisitions, subscriptions revenue increased 17.2% for the twelve months ended December&#160;31, 2020. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our backlog at December&#160;31, 2020 was $1.59 billion, a 9.4% increase from last year. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 73.3% of our revenue in 2020. 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 of our revenue growth, 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 2020, based on our number of customers, turnover was approximately 2%.</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020, our total employee count increased to 5,536 from 5,368 at December&#160;31, 2019.</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Balance Sheet &#8211; Cash, accounts receivable and days sales outstanding and deferred revenue balances are important indicators of our business.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Impact of the COVID-19 Pandemic</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In March 2020, the World Health Organization declared the outbreak of a COVID-19 pandemic, which continues to spread throughout the U.S. and the world and has resulted in authorities implementing numerous measures to contain the virus, including travel bans and restrictions, quarantines, shelter-in-place orders, and business limitations and shutdowns. </span><span style="color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While we </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">are unable to accurately predict the full impact that COVID-19 will have on our results from operations, financial condition, liquidity and cash flows due to numerous uncertainties, including the duration and severity of the pandemic and containment measures and associated compliance, the current environment has negatively impacted our revenues for fiscal year 2020. </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">22</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Because an increasing portion of our revenues are recurring, the effect of COVID-19 on our results of operations may also not be fully reflected for some time. We continue to see some impact on our business in the near term with delays in government procurement processes and uncertainty around public sector budgets, as well as delays in implementations caused by travel restrictions, closed offices, or clients shifting focus to more pressing issues. We have addressed those challenges through adapting the way we do business &#8211; encouraging web and video conferencing, conducting virtual sales demonstrations and delivering professional services remotely.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our priorities during this crisis are protecting the health and safety of our employees and our clients. Our IT systems and applications support a remote workforce. Prior to the pandemic, many of our employees worked remotely.  In response to the pandemic, we encouraged all employees who are able to do so to work from home, equipping them with resources necessary to continue uninterrupted. We were able to transition the vast majority of our employees to this work-from-home posture. This reduces the number of team members in our offices to those uniquely needed for essential on-site services, such as network operations support staff, and allows for &#8220;social distancing&#8221; as directed by the Centers for Disease Control ("CDC").</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The pandemic has delayed some government procurement processes and is expected to impact our ability to complete certain implementations, negatively impacting our revenue. It could also negatively impact the timing of client payments to us. We continue to monitor these trends in order to respond to the ever-changing impact of COVID-19 on our clients and Tyler&#8217;s operations.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the twelve months ended December&#160;31, 2020, the impact of the COVID-19 pandemic resulted in lower revenues from software licenses, software services, appraisal services, and other revenues. Lower software licenses compared to prior periods are attributed to slower sales cycles as government procurement processes are delayed and contract signings have been pushed to future periods. Software services and appraisal services revenue declines are attributed to delays in implementations caused by travel restrictions and shelter-in-place orders in effect during the period. Other revenues were lower compared to prior periods primarily as a result of the cancellation of our 2020 Connect user conference. Lower revenues compared to prior periods were offset by cost savings attributed to lower spend on travel, user conferences and trade show expenses, health claims and other employee-related expenses. If and as travel restrictions are relaxed, we expect software services and appraisal services revenues to increase as the limited number of our clients who require that all or a portion of their services be delivered onsite will be able to receive those services. Also, we are adapting by changing the way we do business, encouraging web and video conferencing, conducting virtual sales demonstrations and delivering professional services remotely, which result in increases in staff utilization rates and billable time.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring revenues from subscriptions and maintenance comprised 73.3% of our total consolidated revenue for the twelve months ended December&#160;31, 2020, and include transaction-based revenue streams such as e-filing and online payments. As of December&#160;31, 2020, we had $758.5 million in cash and investments and no outstanding borrowings under our credit facility. We also have substantial additional liquidity available through our undrawn $400 million credit facility, which can be expanded through an accordion feature.  During the second quarter of 2020, we completed our annual assessment of goodwill which did not result in an impairment charge. Since our assessment in the second quarter of 2020, we have recorded no impairment to goodwill as no triggering events or changes in circumstances occurred as of period-end. No impairments of other assets were recorded as of the balance sheet date as no triggering events or changes in circumstances indicating a potential impairment have occurred as of period-end to require such an impairment; however, due to significant uncertainty surrounding the pandemic and market conditions, management&#8217;s judgment regarding this could change in the future.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Security Incident</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September 29, 2020, we filed a Current Report on Form 8-K reporting a security incident (the "Incident") involving ransomware disrupting access to some of our internal IT systems and telephone systems. There is no evidence that the environments where we host client applications were affected, and our hosting services to those clients were not interrupted.  There is also no evidence of malicious activity on client networks associated with the Incident. We contained the Incident and recovered from it, resuming normal operations with our clients. We will continue to deploy supplemental remediation efforts as necessary. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As part of our immediate response to the Incident, we (1) shut down points of access to external systems and began investigating and remediating the problem; (2) engaged outside IT security and forensics experts to conduct a detailed review and help securely restore affected systems; (3) implemented targeted monitoring systems to supplement the systems we already had in place; and (4) notified law enforcement. We are have cooperated with their investigation throughout. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We promptly notified our clients of the Incident and provided timely updates to our clients through direct communications and updates to our website. </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">23</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Although we believe we have contained and recovered from the Incident, and that we have taken and will continue to take appropriate remediation steps, we are subject to risk and uncertainties as a result of the Incident. We believe we are in the final phases of our investigation, but there can be no assurance as to what the ongoing impact of the Incident will be, if any. The Incident caused an interruption in parts of our business. We estimate that as a result of the Incident, revenue (primarily software services) for the year ended December 31, 2020 was reduced by approximately $1.5 million; however, insurance reimbursements pertaining to lost revenue represent a contingent gain and any recovery of these revenues will be recorded when received. We incurred $4.2 million in costs associated with the Incident as of December&#160;31, 2020. As of</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> December 31, 2020, we have recorded </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$1.1 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of accrued insurance recoveries and received </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$2.4 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of insurance recoveries related to the Incident. The recorded costs consisted primarily of payments to third-party service providers and consultants, including legal fees, and enhancements to our cybersecurity measures.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> It is expected that we will continue to incur costs related to our response, remediation, and investigatory efforts relating to the Incident. We maintain cybersecurity insurance coverage in an amount that we believe is adequate.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recent adoption of new accounting pronouncements</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2016, the FASB issued ASU 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financial Instruments - Credit Losses,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#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, available for-sale debt securities, 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 an 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 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.  As of January 1, 2020, we adopted the new standard with no material impact of credit losses to our trade and other receivables, held-to-maturity debt securities and retained earnings included in our consolidated financial statements.</span></div><div style="margin-bottom:9pt;margin-top:6pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">O</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">n January 26, 2017, the FASB issued ASU No. 2017-04, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Simplifying the Test for Goodwill Impairment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The new standard eliminates Step 2 from the goodwill impairment test. An entity should recognize a goodwill impairment charge for the amount by which the carrying amount exceeds the reporting unit's fair value. This standard is effective for public business entities in fiscal years beginning after December 15, 2019, and the standard was adopted and applied prospectively by the Company as of January 1, 2020, but it did not have a significant impact on the Company's financial statements and disclosures.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recent Accounting Guidance not yet Adopted</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2019, the FASB issued ASU 2019-12,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Simplifying the Accounting for Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, ("ASU 2019-12") which simplifies the accounting for income taxes, eliminates certain exceptions within ASC 740, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, and clarifies certain aspects of the current guidance to promote consistency among reporting entities. The new standard is effective for fiscal years beginning after December 15, 2020. Most amendments within the standard are required to be applied on a prospective basis, while certain amendments must be applied on a retrospective or modified retrospective basis. We do not expect adoption of this standard to have a material effect on our consolidated financial statements.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Outlook</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The local government software market continues to be active, and our backlog at December&#160;31, 2020 reached $1.59 billion, a 9.4% increase from the prior 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 id="i8b7048d9282b49808c9b0dc46622e6f3_49"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CRITICAL ACCOUNTING POLICIES AND ESTIMATES</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">24</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe the following critical accounting policies require significant judgments and estimates used in the preparation of our financial statements.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue Recognition. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:6pt;margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Identification of the contract, or contracts, with a customer</span></div><div style="margin-bottom:6pt;margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Identification of the performance obligations in the contract</span></div><div style="margin-bottom:6pt;margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Determination of the transaction price</span></div><div style="margin-bottom:6pt;margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Allocation of the transaction price to the performance obligations in the contract</span></div><div style="margin-bottom:6pt;margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Recognition of revenue when, or as, we satisfy a performance obligation</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 one to ten years, but are typically for a period of three to five years. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">25</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We maintain allowances for losses and sales adjustments, 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 losses and sales adjustments 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 losses 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. Our allowance for losses and sales adjustments of $9.3 million and $5.7 million at December&#160;31, 2020, and December&#160;31, 2019, respectively, does not include provisions for credit losses. As of January 1, 2020, we adopted ASU 2016-13 and primarily evaluated our historical experience with credit losses related to trade and other receivables. Because we have not experienced any historical credit losses with the majority of our clients, we have no basis to record a reserve for credit losses as defined by the standard.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Intangible Assets and Goodwill</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 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. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the second quarter, as part of our annual impairment test, we performed qualitative assessments for all reporting units except for the data and insights reporting unit. As a result of these qualitative assessments, we determined that it was not more likely than not that an impairment existed; therefore, we did not perform a Step 1 quantitative impairment test. We did perform a quantitative assessment for goodwill of $75.7 million associated with our data and insights business unit and concluded no impairment existed as of our annual assessment date. For most of our reporting units, goodwill relates to a combination of legacy and acquired businesses and as a result those units have fair values that substantially exceed their underlying carrying values. For other reporting units, in particular our platform technologies and data and insights business units, goodwill entirely relates to recently acquired businesses, and as a result those units do not have significant excess fair values over carrying values. The platform technologies and data and insights business units combined goodwill was $152.0 million, or 18%, of total goodwill as of December&#160;31, 2020. Our annual goodwill impairment analysis did not result in an impairment charge. During 2020, we have recorded no impairment to goodwill as no triggering events or changes in circumstances indicating a potential impairment have occurred as of period-end.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">26</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Determining the fair value of our reporting units involves the use of significant estimates and assumptions and considerable management judgment. We base our fair value estimates on assumptions we believe to be reasonable at the time, but such assumptions are subject to inherent uncertainty. Changes in market conditions or other factors outside of our control, such as the COVID-19 pandemic, could cause us to change key assumptions and our judgment about a reporting unit&#8217;s prospects. Similarly, in a specific period, a reporting unit could significantly underperform relative to its historical or projected future operating results. Either situation could result in a meaningfully different estimate of the fair value of our reporting units, and a consequent future impairment charge. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 2020, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Share-Based Compensation. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">27</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_52"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ANALYSIS OF RESULTS OF OPERATIONS AND OTHER</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following discussion compares the historical results of operations on a basis consistent with GAAP for the years ended December&#160;31, 2020, 2019 and 2018.</span></div><div style="margin-bottom:14pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.361%"><tr><td style="width:1.0%"></td><td style="width:63.236%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.312%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.513%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.312%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.513%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.314%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Percentage of Total Revenues<br/>Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">31.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">20.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of software licenses, royalties and</span></div><div style="padding-left:20.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">acquired software</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of  subscriptions, software services and<br/>    maintenance<br/></span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">45.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">46.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">46.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Research and development expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7.5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of customer and trade name</span></div><div style="padding-left:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">intangibles</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15.5&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">14.4&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16.3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other income, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15.7&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">14.7&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16.7&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income tax (benefit) provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1.8)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17.5&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13.5&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15.8&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">2020 Compared to 2019 </span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Revenues</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 periods presented as of December&#160;31, 2020 and 2019, which is included in our consolidated statements of income from the date of acquisition:</span></div><div style="margin-bottom:5pt;margin-top:11pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:61.111%"><tr><td style="width:1.0%"></td><td style="width:42.536%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:25.036%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.300%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:25.038%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;Software licenses and royalties</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,206&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,737&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;Subscriptions</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,823&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,472&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;Software services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,391&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,143&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;Maintenance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,701&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">28,642&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;Appraisal services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;Hardware and other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">77,157&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">63,018&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">28</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software licenses and royalties.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ES</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,200&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">90,808&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(26,608)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(29)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">A&amp;T</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,964&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,397&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(433)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(5)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total software licenses and royalties revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">73,164&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,205&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(27,041)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(27)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Software licenses and royalties revenue decreased 27% compared to the prior year. The decline is primarily due to longer sales cycles attributed to our ERP, public safety, and appraisal software products as the impact of COVID-19 has slowed government procurement processes and some contract signings have been pushed to future periods.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Software licenses revenue was also negatively impacted by delayed deliveries attributed to the IT security incident that occurred in late September 2020. Also contributing to the decline is the shift in the mix of new software contracts toward more subscription-based agreements compared to the prior year. Our total new client mix in 2020 was approximately 38% perpetual software license arrangements and approximately 62% subscription-based arrangements compared to total new client mix in 2019 of approximately 46% perpetual software license arrangements and approximately 54% subscription-based arrangements. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Subscriptions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth a comparison of our subscriptions revenue for the years ended December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ES</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">326,284&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">279,282&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">47,002&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">A&amp;T</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">24,364&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,070&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,294&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">43&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total subscriptions revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">54,296&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subscription-based revenue increased 18% compared to 2019. &#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 2020, we added 488 new SaaS clients and 157 existing clients elected to convert to our SaaS model. Also, transaction-based fees contributed $7.7 million to the increase in subscription revenue due to the increased volumes of online payments from utility billings and slightly increased e-filing services volumes in 2020. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software services.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth a comparison of our software services revenue for the years ended December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ES</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">164,520&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">179,865&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,345)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">A&amp;T</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,889&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">33,196&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(11,307)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(34)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total software services revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(26,652)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">29</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Software services revenue decreased 13% compared to the prior year period. The decline in software services is due to delays in client implementations caused by COVID-19 travel restrictions and shelter-in-place orders and a decline in billable travel revenue, as most services are now being delivered virtually rather than on-site. Software services revenue was also lower due to interruptions caused by the IT security incident that occurred in late September 2020. We estimate that as a result of the Incident, revenue (primarily software services) was reduced by approximately $1.5 million in 2020; however, insurance reimbursements pertaining to lost revenue represent a contingent gain and any recovery of these revenues will be recorded when received.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Also contributing to the decline is the increase of clients selecting our cloud solutions instead of our on-premises license arrangements which typically require more professional services. </span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Maintenance.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth a comparison of our maintenance revenue for the years ended December 31:</span></div><div style="margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ES</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">429,224&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">393,521&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,703&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">A&amp;T</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,289&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,797&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,492&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total maintenance revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">37,195&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We provide maintenance and support services for our software products and certain third-party software. Maintenance revenue grew 9% compared to the prior year. Maintenance revenue increased mainly due to contributions of maintenance revenue from recent acquisitions and completing the recognition of the majority of acquisition-related deferred maintenance revenue that was fair valued at rates below Tyler's average maintenance rate in prior periods. The remainder of the increase is attributed to annual maintenance rate increases and growth in our installed customer base from new software license sales, partially offset by attrition and clients converting from on-premises license arrangements to SaaS.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Appraisal services.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth a comparison of our appraisal services revenue for the years ended December&#160;31:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ES</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">A&amp;T</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(2,352)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total appraisal services revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(2,352)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, appraisal services revenue decreased 10% compared to the prior year primarily due to the delays to several ongoing projects as a result of travel restrictions and shelter-in-place orders related to COVID-19. The appraisal services business is somewhat cyclical and driven in part by statutory revaluation cycles in various states.</span></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Cost of Revenues and Gross Margins</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:14pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in&#160;thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,339&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,938&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(599)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Acquired software</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">31,962&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">30,642&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,320&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions, software services and maintenance </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">510,504&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">502,138&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,366&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,945&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,337&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">608&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,401&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,472&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(5,071)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(29)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total cost of revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">574,151&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">569,527&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,624&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">30</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth a comparison of gross margin percentage by revenue type for the years ended December 31:</span></div><div style="margin-bottom:14pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:62.471%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.331%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross margin percentage</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses, royalties and acquired software</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">51.8&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">65.5&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13.7)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions, software services and maintenance </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">46.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">24.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">34.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(10.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">30.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">24.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Overall gross margin</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">48.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">47.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software licenses, royalties and acquired software</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. 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 13.7%&#160;is due to lower revenue from software licenses compared to the prior period.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Subscriptions, software services and maintenance</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.&#160;Cost of subscriptions, software services and maintenance 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 2020, the subscriptions, software services and maintenance gross margin increased 2.6% compared to the prior year. Margins have increased primarily due to a reduction in software services revenues from reimbursable travel that has little to no margin, as well as improved utilization of our professional services staff resulting from the shift to virtual delivery of most implementation services, offset somewhat by the reduction in software services revenues as a result of the Incident in late September 2020. Our implementation and support staff grew by 131 employees since December 31, 2019, as we increased 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Appraisal services</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Appraisal services revenue comprised approximately 1.9% of total revenue. The appraisal services gross margin decreased&#160;10.2% compared to 2019 due to lower staff utilization as a result of COVID-19 travel restrictions and shelter-in-place orders in place during the current period. The appraisal services business is somewhat cyclical and driven in part by statutory revaluation cycles in various states.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our 2020 blended gross margin increased 1.0% compared to 2019.&#160;The slight increase in overall gross margin is attributed to a higher revenue mix for subscription revenues compared to the prior year periods resulting in an increase in incremental margin related to subscriptions, software services and maintenance. Margins have also increased due a reduction in software services revenue from reimbursable travel that has little to no margin, as well as improved utilization of our professional services staff resulting from the shift to virtual delivery of most implementation services, offset somewhat by the reduction in software services revenues as a result of the Incident in late September 2020. 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 leveraging utilization of support and maintenance staff and economies of scale. In addition, the cancellation of our Connect user conference scheduled for April 2020 and the related elimination of approximately $6 million of revenues with no associated margin also had a positive impact on our overall gross margin. These increases in overall gross margins are partially offset by lower margins from software licenses due to lower software license revenue as well as lower staffing utilization attributable to appraisal services.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Selling, General and Administrative Expenses</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">259,561&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">257,746&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,815&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SG&amp;A as a percentage of revenue was 23.2% in 2020 compared to 23.7% in 2019. SG&amp;A expense increased approximately 1% compared to the prior year period. The increase in SG&amp;A expense is attributed to increased stock compensation expense compared to the prior period. During 2020, stock compensation expense rose $4.3 million compared to 2019, primarily due to an increase in share-based awards issued in connection with our stock compensation plan coupled with the higher fair value of each share-based award due to the increase in our stock price. These increases in SG&amp;A were offset by lower bonus and commission expense as a result of lower </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">31</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">sales, lower travel expenses associated with sales and marketing activities, including trade shows, as a result of COVID-19 travel restrictions, and lower health claim expenses during the current period.</span></div><div style="margin-bottom:9pt;margin-top:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Research and Development Expense</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:14pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Research and development expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">88,363&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">81,342&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,021&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Research and development expense consists mainly of costs associated with development of new products and technologies from which we do not currently generate significant revenue.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Research and development expense increased 9% in 2020 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 38 since December&#160;31, 2019.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Amortization of Customer and Trade Name Intangibles</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:3pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of customer and trade name intangibles</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,662&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,445&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">217&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:3pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization of customer and trade name intangibles increased due to the impact of intangibles added with several acquisitions completed in 2019.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:55.555%"><tr><td style="width:1.0%"></td><td style="width:78.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.900%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,317&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">20,827&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">20,753&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">20,201&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,672&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">116,779&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense relating to acquired leases will be recorded as a reduction to hardware and other revenue and is expected to be $525,000 in 2021, $525,000 in 2022, $525,000 in 2023, $525,000 in 2024, $397,000 in 2025, and $114,000 thereafter</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">32</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Other</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth a comparison of other income, net for the years ended December 31:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other income, net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,116&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,471&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,355)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(39)%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. The decrease in other income, net compared to the prior period is attributable to the significant decrease in interest rates on cash balances since March</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2020, partially offset by higher levels of invested cash.</span></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Income Tax Provision</span></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth a comparison of our income tax provision for the years ended December 31:</span></div><div style="margin-bottom:9pt;margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.222%"><tr><td style="width:1.0%"></td><td style="width:50.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income tax (benefit) provision </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,778)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,311&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(33,089)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(249)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Effective income tax rate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(11.3)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The decrease in the income tax provision and the effective income tax rate in 2020 compared to the prior year is primarily due to higher excess tax benefits of share-based compensation in 2020. The share-based exercise and vesting activity in 2020 generated excess tax benefits of $60.2 million, while exercise and vesting activity in 2019 generated $29.8 million of excess tax benefits. Excluding the impact of the excess tax benefits, our income tax provision and effective tax rate in 2020 would have been $40.4 million and 23.1% and in 2019, would have been $43.1 million and 27.0%, respectively.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Coronavirus Aid, Relief and Economic Security ("CARES") Act, which was signed into law on March 27, 2020, provides an estimated $2.2 trillion to fight the COVID-19 pandemic and stimulate the U.S. economy. The assistance includes tax relief and government loans, and investments and grants for entities in affected industries (e.g., health care, airlines). </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The business tax provisions of the CARES Act include temporary changes to income and non-income based tax laws, including the ability to utilize net operating losses, interest expense deductions, alternative minimum tax credit refunds, charitable contributions, and depreciation of qualified improvement property. Measures not related to income-based taxes include (1) allowing an employer to pay its share of Social Security payroll taxes that would otherwise be due from the date of enactment through December 31, 2020, over the following two years and (2) allowing eligible employers subject to closure due to the COVID-19 pandemic to receive a 50% credit on qualified wages against their employment taxes each quarter, with any excess credits eligible for refunds.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The most significant provision of the CARES Act impacting our accounting for income taxes is the five-year carryback allowance for taxable net operating losses generated in tax years in which the statutory federal income tax rate is 21.0% to periods in which the statutory federal income tax rate is 35.0%. We intend to carry back our 2020 taxable loss into our 2015 tax year, which results in a $3.4 million income tax benefit in the current year.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The effective income tax rates in both 2020 and 2019 differed from the United States federal statutory corporate income tax rate of 21% primarily due to state income taxes, the research tax credit, non-deductible share-based compensation expense, disqualifying incentive stock award dispositions, and other non-deductible business expenses. The 2020 effective income tax rate also includes the tax benefit of the five-year carryback of the federal net operating loss allowed under the CARES Act.</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_55"></div><div style="-sec-extract:summary;margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">FINANCIAL CONDITION AND LIQUIDITY</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had cash and cash equivalents of $603.6 million compared to $232.7 million at December&#160;31, 2019. We also had $154.8 million invested in investment grade corporate bonds, municipal bonds and asset-backed securities as of December&#160;31, 2020, compared to $81.6 million at December&#160;31, 2019. These investments mature from 2021 through 2028 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 December&#160;31, 2020, we had no outstanding borrowings and one outstanding letter of credit totaling $2.0 million in favor of a client contract.&#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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">33</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth a summary of cash flows for the years ended December 31:</span></div><div style="margin-bottom:14pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:63.434%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">($ in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash flows provided (used) by:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating activities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">355,089&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">254,720&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">250,203&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Investing activities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(98,320)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(245,015)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(238,255)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Financing activities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,172&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">88,698&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(63,595)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net increase (decrease) in cash and cash equivalents</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">370,941&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">98,403&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(51,647)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, operating activities provided cash of $355.1 million compared to $254.7 million in 2019. Operating activities that provided cash were primarily comprised of net income of $194.8 million, non-cash depreciation and amortization charges of $81.7 million, non-cash share-based compensation expense of $67.4 million and non-cash decrease in operating lease right-of-use assets of $5.8 million. Working capital, excluding cash, decreased approximately&#160;$1.9 million 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Days sales outstanding in accounts receivable were 121 days at December&#160;31, 2020, compared to 117 days at December&#160;31, 2019. 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 style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Investing activities used cash of $98.3 million in 2020 compared to $245.0 million in 2019.&#160;We invested $156.6 million and received $82.7 million in proceeds from investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from 2021 through 2028. During 2020, we received $15.0 million in proceeds from the sale of the investment in convertible preferred stock representing a 20% interest in Record Holdings to BFTR, LLC, a wholly owned subsidiary of Bison Capital Partners V.L.P. During the same period, we purchased $10.0 million in common stock representing a 18% interest in BFTR, LLC. We paid $1.3 million in working capital and indemnity holdbacks in connection with the 2019 acquisition of Courthouse Technologies, Ltd. Approximately $22.7 million was invested in property and equipment, including $9.9 million related to real estate. In addition, approximately $5.8 million of software development was capitalized in 2020. 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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">34</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2019, we invested $54.7 million and received $70.8 million in proceeds from investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from 2020 through 2023. On February 28, 2019, we acquired all of the capital stock of MicroPact. The total purchase price, net of cash acquired of $2.0 million, was approximately $202.2 million, including $198.2 million paid in cash and accrued contingent consideration of $6.0 million at December 31, 2019. On February 1, 2019, we acquired all the assets of MyCivic for the total purchase price of $3.7 million paid in cash. On October 30, 2019, we acquired certain assets of CHT. The total purchase price was approximately $20.5 million of which $19.1 million was paid in cash and approximately $1.4 million accrued for working capital and indemnity holdbacks, subject to certain post-closing adjustments. Approximately $37.2 million was invested in property and equipment, including $20.8 million related to real estate. In addition, approximately $4.8 million of software development was capitalized in 2019. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financing activities provided cash of $114.2 million in 2020 compared to $88.7 million in 2019.&#160;Financing activities in 2020 were primarily comprised of collections of $135.3 million from stock option exercises and employee stock purchase plan activity. We also purchased approximately 59,000 shares of our common stock for an aggregate purchase price of $15.5 million.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financing activities provided cash of $88.7 million in 2019 compared to cash used of $63.6 million in 2018. Financing activities in 2019 were primarily comprised of collections of $106.5 million from stock option exercises and employee stock purchase plan activity.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">  </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also purchased approximately 72,000 shares of our common stock for an aggregate purchase price of $14.3 million.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. As of February&#160;19, 2021, we had remaining authorization to repurchase up to 2.5 million 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September&#160;30, 2019, we entered into a $400.0 million 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 $400.0 million, including a $25.0 million sublimit for letters of credit. The Credit Facility matures on September&#160;30, 2024. 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 0.125% to 0.75% or (2) the 30, 60, 90 or 180 day LIBOR rate plus a margin of 1.125% to 1.75%. As of December&#160;31, 2020, our interest rate was 3.38% under the prime rate option or approximately 1.27% under the 30-day LIBOR option. The Credit Facility is unsecured 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 December&#160;31, 2020, we were in compliance with those covenants.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had no outstanding borrowings and had unused borrowing capacity of $400.0 million under the Credit Facility</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We paid interest of $610,000 in 2020, $1,750,000 in 2019, and $770,000 in 2018.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We paid income taxes, net of refunds received, of $3.3 million in 2020, $21.3 million in 2019, and $6.8 million in 2018. In 2020, we experienced significant stock option exercise activity that generated net tax benefits of $60.2 million and reduced tax payments accordingly. In 2019 and 2018, excess tax benefits were $29.8 million and $32.5 million, respectively.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We anticipate that 2021 capital spending will be between $39 million and $40 million, including approximately $3 million related to real estate and approximately $17 million 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><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 one year to seven years.&#160;Some of these leases include options to extend for up to 10 years. </span></div><div style="margin-bottom:9pt"><span><br/></span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">35</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_58"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CAPITALIZATION</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2020, our capitalization consisted of no outstanding debt and $2.0 billion of shareholders&#8217; equity.</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_61"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 7A.&#160;&#160;&#160;&#160;QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, our interest rate was 3.38% under the prime rate option or approximately 1.27% 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="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had no outstanding borrowings under the Credit Facility and therefore are not subject to any interest risk.</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_64"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 8.&#160;&#160;&#160;&#160;FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 id="i8b7048d9282b49808c9b0dc46622e6f3_67"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 9.&#160;&#160;&#160;&#160;CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">36</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_70"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 9A.&#160;&#160;&#160;&#160;CONTROLS AND PROCEDURES.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Evaluation of Disclosure Controls and Procedures </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#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 December&#160;31, 2020.&#160;Based on this evaluation, the chief executive officer and chief financial officer have concluded that our</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">disclosure controls and procedures were effective as of December&#160;31, 2020.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Management&#8217;s Report on Internal Control Over Financial Reporting </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#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="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management assessed the effectiveness of Tyler&#8217;s internal control over financial reporting as of December&#160;31, 2020.&#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 December&#160;31, 2020,&#160;Tyler&#8217;s internal control over financial reporting was effective based on those criteria.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Tyler&#8217;s internal control over financial reporting as of December&#160;31, 2020 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="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Changes in Internal Control Over Financial Reporting </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8212; During the quarter ended December&#160;31, 2020, 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 id="i8b7048d9282b49808c9b0dc46622e6f3_73"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:72pt;text-indent:-72pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 9B.&#160;&#160;&#160;&#160;OTHER INFORMATION.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">37</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_76"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:18pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PART III</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 id="i8b7048d9282b49808c9b0dc46622e6f3_79"></div><div style="margin-bottom:14pt;margin-top:23pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.305%"><tr><td style="width:1.0%"></td><td style="width:51.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.499%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.474%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Headings in Proxy Statement</span></td></tr><tr style="height:17pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:51.75pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ITEM&#160;10.&#160;&#160;&#160;&#160;DIRECTORS, EXECUTIVE OFFICERS, AND CORPORATE GOVERNANCE.</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8220;Tyler Management&#8221; and &#8220;Corporate Governance Principles and Board Matters&#8221;</span></td></tr></table></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_82"></div><div style="margin-bottom:14pt;margin-top:23pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.305%"><tr><td style="width:1.0%"></td><td style="width:51.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.499%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.474%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ITEM&#160;11.&#160;&#160;&#160;&#160;EXECUTIVE COMPENSATION.</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8220;Executive Compensation&#8221;</span></td></tr></table></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_85"></div><div style="margin-bottom:14pt;margin-top:23pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.305%"><tr><td style="width:1.0%"></td><td style="width:51.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.499%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.474%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ITEM&#160;12.&#160;&#160;&#160;&#160;SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS.</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8220;Security Ownership of Certain Beneficial Owners and Management&#8221;</span></td></tr></table></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_88"></div><div style="margin-bottom:14pt;margin-top:23pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.305%"><tr><td style="width:1.0%"></td><td style="width:51.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.499%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.474%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ITEM&#160;13.&#160;&#160;&#160;&#160;CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE.</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">"Executive Compensation" and<br/>&#8220;Certain Relationships and Related Transactions&#8221;</span></td></tr></table></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_91"></div><div style="margin-bottom:14pt;margin-top:23pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:51.333%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.772%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:9pt;margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ITEM 14.&#160;&#160;&#160;&#160;PRINCIPAL ACCOUNTING FEES AND SERVICES.</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">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 style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">38</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_94"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PART IV</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_97"></div><div style="-sec-extract:summary;margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ITEM 15.&#160;&#160;&#160;&#160;EXHIBITS, FINANCIAL STATEMENT SCHEDULES.</span></div><div style="margin-bottom:9pt;text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following documents are filed as part of this Annual Report:</span></div><div style="margin-bottom:14pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:2.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.927%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:82.927%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.876%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(a)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">The financial statements are filed as part of this Annual Report.</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Page</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_103">Reports of Independent Registered Public Accounting Firm</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_103">F-1</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_106">Consolidated Statements of Comprehensive Income for the years ended December 31, </a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_106">2020, </a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_106">2019</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_106"> </a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_106">and </a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_106">2018 </a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_106">F-4</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_109">Consolidated Balance Sheets as of December 31, 20</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_109">20</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_109"> and 201</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_109">9</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_109">F-5</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:justify"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_115">Consolidated Statements of Cash Flows for the years ended December 31, 2020, 2019 and 2018</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_115">F-6</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_118">Consolidated Statements of Shareholders&#8217; Equity for the years ended December 31, </a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_118">2020, </a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_118">2019</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_118"> and</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_118"> 2018</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_118">F-7</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_121">Notes to Consolidated Financial Statements</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_121">F-8</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(2)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Financial statement schedules:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">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></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exhibits</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Certain of the exhibits to this Annual Report are hereby incorporated by reference, as specified:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div style="margin-bottom:14pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:5.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:89.596%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Exhibit</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Number</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Description</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 6.62pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">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></td></tr><tr><td colspan="3" style="padding:2px 6.62pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.2</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">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></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000156459015008522/tyl-ex33_112.htm">3.3</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000156459015008522/tyl-ex33_112.htm">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).</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000095013401002412/d84862ex3-4.txt">3.4</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000095013401002412/d84862ex3-4.txt">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).</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 6.62pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Specimen of Common Stock Certificate (filed as Exhibit 4.1 to our registration statement no. 33-33505 and incorporated by reference herein).</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000119312515378245/d57735dex101.htm">4.2</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000086073119000039/exhibit101creditagreem.htm">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;</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/860731/000086073121000005/nicagreement2921.htm">4.3</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/860731/000086073121000005/nicagreement2921.htm">Agreement and Plan of Merger, dated February 9, 2021 by and among Tyler Technologies, Inc., Topos Acquisition, Inc., and NIC, Inc.(file</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/860731/000086073121000005/nicagreement2921.htm">d</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/860731/000086073121000005/nicagreement2921.htm"> as Exhibit 2.1 to our Form 8-K, dated February 10, 2021, and incorporated by reference herein).</a></span></div><div><span><br/></span></div><div><span><br/></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000119312512282212/d371277ds8.htm">10.1</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000119312512282212/d371277ds8.htm">Employee Stock Purchase Plan (filed as Exhibit 10.1 to our registration statement 333-182318 dated June 25, 2012 and incorporated by reference herein).</a></span></div><div><span><br/></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000119312513067262/d487966dex103.htm">10.2</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000013/a101exhibit2018execemplagm.htm">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).</a></span></div><div><span><br/></span></div></td></tr></table></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">39</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:14pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.583%"><tr><td style="width:1.0%"></td><td style="width:7.128%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:89.975%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Exhibit<br/>Number</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Description</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000119312513067262/d487966dex105.htm">10.3</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000013/a103exhibit2018execemplagm.htm">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).</a></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">.</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000119312513067262/d487966dex106.htm">10.4</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000013/a102exhibit2018execemplagm.htm">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).</a></span></div><div><span><br/></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b7048d9282b49808c9b0dc46622e6f3_1">10.5</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000086073119000009/plan_ofxmergermicropactexh.htm">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).</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000016/tylproxy2018.htm#sb3775a337bee452f876ac4e4a6e1c03e">10.6</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000016/tylproxy2018.htm#sb3775a337bee452f876ac4e4a6e1c03e">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).</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit-23.htm">*23</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit-23.htm">Consent of Independent Registered Public Accounting Firm.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit311.htm">&#160;</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit311.htm">*31.1</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit311.htm">Rule 13a-14(a) Certification by Principal Executive Officer.</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit311.htm">(a) Certification by Principal Executive Officer.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit312.htm">*31.2</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit312.htm">&#160;Rule 13a-14(a) Certification by Principal Financial Officer.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit321.htm">*32.1</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline" href="tyl12312020exhibit321.htm">Section 1350 Certification of Principal Executive Officer and Principal Financial Officer.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">*101.INS</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">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></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">*101.SCH</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;<br/>Inline XBRL Taxonomy Extension Schema Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">*101.CAL</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;<br/>Inline XBRL Taxonomy Extension Calculation Linkbase Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">*101.LAB</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Inline XBRL Extension Labels Linkbase Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">*101.DEF</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Inline XBRL Taxonomy Extension Definition Linkbase Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">*101.PRE</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;<br/>Inline XBRL Taxonomy Extension Presentation Linkbase Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">104</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101).</span></td></tr></table></div><div style="margin-bottom:14pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:98.888%"><tr><td style="width:1.0%"></td><td style="width:5.079%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:92.721%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212; Filed herewith.</span></td></tr></table></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">40</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_100"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SIGNATURES</span></div><div style="margin-top:6pt;text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:90.000%"><tr><td style="width:1.0%"></td><td style="width:39.486%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.423%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.683%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.423%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.285%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">TYLER TECHNOLOGIES, INC.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ H. Lynn Moore, Jr.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">H. Lynn Moore, Jr.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">President and Chief Executive Officer</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(principal executive officer)</span></td></tr></table></div><div style="margin-top:12pt;text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:90.000%"><tr><td style="width:1.0%"></td><td style="width:39.486%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.423%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.683%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.423%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.285%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ John S. Marr, Jr.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">John S. Marr, Jr.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Executive Chairman of the Board</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ H. Lynn Moore, Jr.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">H. Lynn Moore, Jr.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">President and Chief Executive Officer</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(principal executive officer)</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ Brian K. Miller</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Brian K. Miller</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Executive Vice President and Chief Financial Officer</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(principal financial officer)</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ W. Michael Smith</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">W. Michael Smith</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Chief Accounting Officer</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(principal accounting officer)</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ Donald R. Brattain</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Donald R. Brattain</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ Glenn A. Carter</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Glenn A. Carter</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ Brenda A. Cline</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Brenda A. Cline</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td></tr></table></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:90.000%"><tr><td style="width:1.0%"></td><td style="width:39.486%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.423%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.683%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.423%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.285%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ Mary Landrieu</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mary Landrieu</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ Daniel M. Pope</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Daniel M. Pope</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Date: February 19, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">/s/ Dustin R.Womble</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Dustin R. Womble</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td></tr></table></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">41</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_103"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:174%">Report of Independent Registered Public Accounting Firm</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To the Shareholders and the Board of Directors of Tyler Technologies, Inc.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Opinion on the Financial Statements</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have audited the accompanying consolidated balance sheets of Tyler Technologies, Inc. (the Company) as of December&#160;31, 2020 and 2019, the related consolidated statements of comprehensive income, shareholders&#8217; equity and cash flows for each of the three years in the period ended December&#160;31, 2020, 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 December&#160;31, 2020 and 2019, and the results of its operations and its cash flows for each of the three years in the period ended December&#160;31, 2020, in conformity with U.S. generally accepted accounting principles.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020, 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 February&#160;19, 2021 expressed an unqualified opinion thereon.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis for Opinion</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Critical Audit Matter</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The critical audit matter communicated below is a matter arising from the current period audit of the financial statements that was communicated or required to be communicated to the audit committee and that: (1) relates to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of the critical audit matter does not alter in any way our opinion on the consolidated financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing a separate opinion on the critical audit matter or on the account or disclosure to which it relates</span><span style="color:#333333;font-family:'Verdana',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-1</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:12pt;margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.638%"><tr><td style="width:1.0%"></td><td style="width:14.262%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:83.538%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Estimation of hours for certain progress-to-completion (POC) arrangements</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Description of<br/>the Matter</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As described in Note 1 to the consolidated financial statements under &#8220;Revenue Recognition,&#8221; many of the Company&#8217;s software arrangements involve &#8220;off-the-shelf&#8221; 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><span><br/></span></div><div><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">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><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">How We Addressed the Matter in Our Audit</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">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><span><br/></span></div><div><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%">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 appropriateness of remaining budgeted hours and trend of progress on the contracts and performing an analysis of completed contracts to compare actual hours incurred upon completion to the original budget.</span></div></td></tr></table></div><div style="margin-bottom:12pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">/s/ ERNST&#160;&amp; YOUNG LLP</span></div><div style="margin-top:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have served as the Company&#8217;s auditor since 1966.</span></div><div style="margin-top:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Dallas, Texas</span></div><div style="margin-top:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February&#160;19, 2021 </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-2</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt;text-align:center"><span style="color:#333333;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Report of Independent Registered Public Accounting Firm</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To the Shareholders and the Board of Directors of Tyler Technologies, Inc.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Opinion on Internal Control over Financial Reporting </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have audited Tyler Technologies, Inc.&#8217;s internal control over financial reporting as of December&#160;31, 2020, 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 December&#160;31, 2020, based on the COSO criteria.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020 and 2019, the related consolidated statements of comprehensive income, shareholders&#8217; equity and cash flows for each of the three years in the period ended December&#160;31, 2020, and the related notes and our report dated February&#160;19, 2021</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">expressed an unqualified opinion thereon. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis for Opinion </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Definition and Limitations of Internal Control Over Financial Reporting </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">/s/ ERNST&#160;&amp; YOUNG LLP</span></div><div style="margin-bottom:3pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Dallas, Texas</span></div><div style="margin-bottom:3pt;margin-top:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February&#160;19, 2021 </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-3</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_106"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Tyler Technologies, Inc.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated Statements of Comprehensive Income</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the years ended December&#160;31</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(In thousands, except per share amounts)</span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if8fa710bd40b4dd590f20c1b4534950e_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzItMS0xLTEtMA_9177a30a-231d-4af6-a585-773934b81884">73,164</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i117f5dbfd2ee45b9acfdcbfa8c75576c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzItMy0xLTEtMA_d937282b-62e4-4ff4-a92e-41cdd6006b1f">100,205</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id9b96ea2c94741fe9153877de62c6fed_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzItNS0xLTEtMA_3e1edd01-5c9d-4dce-bcba-1195a5e548ad">93,441</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8322e4d56da4e2d95685db9396c9692_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMtMS0xLTEtMA_ed01ff70-26d7-4587-acc2-b451c5e23a20">350,648</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ida4f226a38484bfba1d39a6cb3f09899_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMtMy0xLTEtMA_6cf7b1b9-c139-41e2-a96a-a54524b88a6b">296,352</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifde0f926bfce4fd082aedc3599d56854_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMtNS0xLTEtMA_a587db27-13d4-4bd2-9ced-6076bf4d4a8b">220,547</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9cc233e615334f518f580b82bb14d73a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzQtMS0xLTEtMA_58c66937-09cc-4d3e-ad2f-a0dc8128f9e3">186,409</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5c7d1b68baf7406fa7740140cec4e452_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzQtMy0xLTEtMA_89feab90-5f07-4c72-94e0-0a108a1c4d31">213,061</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i321785b37ea747b8879b892dee772d78_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzQtNS0xLTEtMA_36c3e963-8cc7-4536-b472-77022d4dd549">191,269</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05e1622f629a4425913b1635df4a04e2_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzUtMS0xLTEtMA_03ff15e7-db6e-4851-8f03-66d15fda1368">467,513</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8d10cc1da94440e1b8af4178515524bd_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzUtMy0xLTEtMA_f035e911-43e5-4608-ab69-1b35d6f74650">430,318</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie9abd07dabb546c6acab4fa6949b3c4e_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzUtNS0xLTEtMA_398117ae-4450-43bf-b6bd-746a351f467c">384,521</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b3f1e3d428e4132927a753977386694_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzYtMS0xLTEtMA_920a10df-47a9-4dbb-a44d-62631247dc09">21,127</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzYtMy0xLTEtMA_05a89a92-5eb4-42ef-b37f-42ba31e4796a">23,479</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzYtNS0xLTEtMA_7b46bc66-5ac9-4b24-bd66-d8a0c355050a">21,846</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a28a06f509941fe98fb7e7fc27c5600_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzctMS0xLTEtMA_d3603140-7dc2-4b6f-aa5b-4d8712d83452">17,802</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idb422f10382e4413ae24e0220d77db4f_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzctMy0xLTEtMA_5f190af7-dc7b-4748-bacb-e9153b44c52a">23,012</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i33a50375addc42559ace50529545ce43_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzctNS0xLTEtMA_9621c658-9e52-476f-b639-cef537010e56">23,658</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzgtMS0xLTEtMA_e89f650c-9819-4822-a597-8695ba0693c1">1,116,663</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzgtMy0xLTEtMA_7c21176d-89d1-47a4-bda5-776c05575ea5">1,086,427</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzgtNS0xLTEtMA_a92d7757-af34-44d4-aa5a-2b98f3135c94">935,282</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of revenues:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if8fa710bd40b4dd590f20c1b4534950e_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzExLTEtMS0xLTA_c614a9ee-5c58-476b-9151-0b7635f17d3b">3,339</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i117f5dbfd2ee45b9acfdcbfa8c75576c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzExLTMtMS0xLTA_3bd4535d-941b-4c8c-acb6-81df77be4033">3,938</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id9b96ea2c94741fe9153877de62c6fed_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzExLTUtMS0xLTA_192a126a-ca57-4635-885c-4accdb8f6268">3,802</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Acquired software</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0c0b7e083ecf409aaf3ad6340f8dac46_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEyLTEtMS0xLTA_0fd365ef-c9d9-4d8b-bbf8-9db9c4a220e9">31,962</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib017794e72244d0c9cc15892c74e8e3c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEyLTMtMS0xLTA_a2d224a8-a128-45a6-be5c-cb22ac916c01">30,642</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a1e475a5ccc40388fdd253f99b09167_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEyLTUtMS0xLTA_e2cea1aa-c186-4f6e-8a8f-29e68c9206f3">22,972</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;Subscriptions, software services and maintenance </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i15fbe9bcb6fe49a9b0cab874a05dec3c_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEzLTEtMS0xLTA_7ae7c7f1-8d42-4f5c-b907-44c88f359dcf">510,504</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a62bd11803e475387e6330dddf212cc_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEzLTMtMS0xLTA_a96fdb8b-64ea-46be-8b50-258218f5e8f6">502,138</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifb5e1296d5644b179f952701425fe1cc_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEzLTUtMS0xLTA_27ebff87-fb02-4f77-8393-2dfceb54220f">438,923</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b3f1e3d428e4132927a753977386694_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE0LTEtMS0xLTA_789d2893-80bb-4079-a000-d84b514cd8b7">15,945</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE0LTMtMS0xLTA_fd98df9c-cf78-479d-a9a3-11266d213237">15,337</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE0LTUtMS0xLTA_8736cd6c-e3c8-4152-8217-44eab5d61d20">14,299</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a28a06f509941fe98fb7e7fc27c5600_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE1LTEtMS0xLTA_7a8dc05d-27ab-41f3-97d7-a52914008a3d">12,401</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idb422f10382e4413ae24e0220d77db4f_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE1LTMtMS0xLTA_b0557c68-4a8c-450e-93c4-5ff893164e69">17,472</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i33a50375addc42559ace50529545ce43_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE1LTUtMS0xLTA_5f087619-92c4-4389-a74a-9fbf858de612">15,708</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total cost of revenues</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE2LTEtMS0xLTA_ed3fd9b5-d016-452f-909c-5808a8c1e229">574,151</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE2LTMtMS0xLTA_b1107a06-9bc3-4e43-8c84-744d677cca1c">569,527</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE2LTUtMS0xLTA_5709ddcb-d9a9-4baa-89d1-2e58dd082b45">495,704</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE4LTEtMS0xLTA_213aa1d0-3335-4f91-b039-88263ae53262">542,512</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE4LTMtMS0xLTA_17556084-01dc-416c-ba6c-6505446e9439">516,900</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE4LTUtMS0xLTA_d873afa2-77c8-4bb9-89ef-999869d59a30">439,578</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIwLTEtMS0xLTA_a9967617-7d53-4c5c-ba5a-f76408f20c74">259,561</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIwLTMtMS0xLTA_179bbd0f-b5be-47cf-896f-09d6870728eb">257,746</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIwLTUtMS0xLTA_2c147f59-bd30-4ffb-ac2e-a49ba1144775">207,605</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Research and development expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIxLTEtMS0xLTA_e17a51c8-0f05-4c11-bc48-28f74d02336d">88,363</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIxLTMtMS0xLTA_9fb3c757-949c-47c3-b20e-cfc9d6cb1b2c">81,342</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIxLTUtMS0xLTA_4874c2ef-8dee-4b8d-941e-241e6b51d49c">63,264</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of customer and trade name intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIyLTEtMS0xLTA_d60adcd3-5a64-4e9a-9d31-f3f25e37a7ee">21,662</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIyLTMtMS0xLTA_0f7d9ff6-819b-49ce-a6fa-b8fb1fafecb1">21,445</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIyLTUtMS0xLTA_061980e1-8995-45b6-a1e7-779a5d1fb896">16,217</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI0LTEtMS0xLTA_07feef98-5157-4159-ad63-ccfadbf9c051">172,926</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI0LTMtMS0xLTA_88287fe2-ddbc-4cda-b0df-2da18c7d4228">156,367</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI0LTUtMS0xLTA_f8c28999-350d-4ef0-a6b7-7b2dd5a08f89">152,492</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other income, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI2LTEtMS0xLTA_cf508d31-f110-48fd-ae7d-c3e151943559">2,116</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI2LTMtMS0xLTA_bebcae67-8d6f-484c-b8be-ec4e0b033cc8">3,471</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI2LTUtMS0xLTA_4935139c-c821-42ee-91d9-577e16e923a2">3,378</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Income before income taxes</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI3LTEtMS0xLTA_7e49795f-e093-4595-b9da-61de6d1c15ec">175,042</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI3LTMtMS0xLTA_2b9c6064-83db-45fe-8eef-5467d6bb247f">159,838</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI3LTUtMS0xLTA_70f53395-89f9-4725-bcc1-609296219d89">155,870</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income tax (benefit) provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI4LTEtMS0xLTA_9f6c6f7e-92ae-49ff-970e-9525be70ca6e">19,778</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI4LTMtMS0xLTA_a7ad6071-7b6d-4e1c-9fdf-8047f6aa9f8a">13,311</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI4LTUtMS0xLTA_a81af69f-03a7-4291-940f-c7e66f052622">8,408</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;Net income</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI5LTEtMS0xLTA_eb3831a9-3664-4707-9cd0-fb6ac0762088">194,820</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI5LTMtMS0xLTA_29c96422-20aa-4273-a57f-92eed1eb5fb9">146,527</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI5LTUtMS0xLTA_512b4dcb-775f-46da-98ed-38f0acec0641">147,462</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Earnings per common share:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Basic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMyLTEtMS0xLTA_212650e2-9c02-4db6-aaeb-bee5b9ffab0a">4.87</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMyLTMtMS0xLTA_547ed4ee-b35f-4164-a73e-d6c7b11cef9f">3.79</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMyLTUtMS0xLTA_827a2cc4-7a09-4e16-8d45-d28da6d9dabc">3.84</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMzLTEtMS0xLTA_d7d36e26-fb6d-433b-84c6-fc1f95a6855b">4.69</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMzLTMtMS0xLTA_0e0d25cd-e81c-4f65-88be-210b09e757ee">3.65</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMzLTUtMS0xLTA_fc112ea2-b928-4089-bcc5-b1e50060fd23">3.68</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-4</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_109"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Tyler Technologies, Inc.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated Balance Sheets</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(In thousands, except par value and share amounts)</span></div><div style="margin-bottom:5pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:75.983%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.012%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12/31/2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12/31/2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">ASSETS</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Current assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQtMS0xLTEtMA_95e2b77d-c08e-4995-a948-fa33a9c7a221">603,623</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQtMy0xLTEtMA_d92cf3a1-7f60-490c-9967-4eca107c6e46">232,682</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accounts receivable (less allowance for losses and sales adjustments of $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzUtMC0xLTEtMC90ZXh0cmVnaW9uOmJiNWJhZGExM2ZjYTQ0OTQ5ZTM3NDY1ZmMyNWYwZmRkXzI3NDg3NzkwNjk2MDQ_28b91a53-23a9-4864-8e98-7ca2f4a572ed">9,255</ix:nonFraction> in 2020 and $<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzUtMC0xLTEtMC90ZXh0cmVnaW9uOmJiNWJhZGExM2ZjYTQ0OTQ5ZTM3NDY1ZmMyNWYwZmRkXzI3NDg3NzkwNjk1OTU_d4b3aefb-c738-4d95-ab3f-e92d638c02f9">5,738</ix:nonFraction> in 2019)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzUtMS0xLTEtMA_0e724570-a721-410f-a35f-da8a9d45e51e">382,319</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzUtMy0xLTEtMA_31abf79a-a562-47db-a2cf-64bcfad18d8d">374,089</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Short-term investments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShortTermInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzYtMS0xLTEtMA_af745067-4d7f-4070-afa2-a7cffcb37219">72,187</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShortTermInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzYtMy0xLTEtMA_491a4f49-2970-424d-ba36-ca0b04bf6ccb">39,399</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Prepaid expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PrepaidExpenseCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzctMS0xLTEtMA_8f2c7cfa-440a-4034-946d-a03dbcf2100d">30,864</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PrepaidExpenseCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzctMy0xLTEtMA_cfabdf32-ddbc-472b-872c-3c59afa26af6">24,717</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income tax receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzgtMS0xLTEtMA_68d18b21-06ed-4ac1-b344-930495aefa05">21,598</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzgtMy0xLTEtMA_32058536-8907-4fbc-9434-47e004938e9d">6,482</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzktMS0xLTEtMA_55112f65-6d0e-43f7-b0ed-56e03a4ed4af">2,479</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzktMy0xLTEtMA_78b77321-d4fb-44cb-ae6c-6ecf1e670565">2,328</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total current assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEwLTEtMS0xLTA_83036ed0-a3d4-4f1c-b0ca-003c7aab0640">1,113,070</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEwLTMtMS0xLTA_531ce22f-3c54-41ec-8a28-d8c0f30421f7">679,697</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accounts receivable, long-term</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEyLTEtMS0xLTA_c9dc6a81-d627-49d1-b2cc-014122e9d9fd">21,417</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEyLTMtMS0xLTA_3760a9de-8fdf-4747-8f74-1339a3888646">22,432</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEzLTEtMS0xLTA_4b39945f-7f30-4cfc-8c3b-04e6fbd92328">18,734</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEzLTMtMS0xLTA_254865ae-a812-49eb-9cbf-d2994ae0a1d3">18,992</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE0LTEtMS0xLTA_dab9892b-54ed-45ef-b9d8-5b723707c3cc">168,004</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE0LTMtMS0xLTA_80821079-fc85-4348-9a46-53b8c82bf0eb">171,861</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE2LTEtMS0xLTA_002ae37e-0e09-4179-b2f4-3785e1bb03a6">838,428</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE2LTMtMS0xLTA_dc1c201c-6d40-411b-ae77-8adc4df130d0">840,117</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other intangibles, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE3LTEtMS0xLTA_a8a6964b-37ae-4fc8-9e95-3740e79bf3bd">331,189</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE3LTMtMS0xLTA_742f559e-6e40-4d91-a5df-8b87bb48fb5b">378,914</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-current investments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Investments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE3LTEtMS0xLTQyMDQ_2623f71b-d076-460c-9a76-dc03212f1f82">82,640</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Investments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE3LTMtMS0xLTQyMDQ_cd2ed39e-db64-4a3c-b4f2-f96df819d3c6">42,235</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE4LTEtMS0xLTA_4b76913d-26fa-4b55-80ea-86d63a0632fe">33,792</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE4LTMtMS0xLTA_af5e6c96-d028-4175-a7a5-4cc2c298bb66">37,366</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE5LTEtMS0xLTA_89aa7896-bb20-4b45-bc93-4b15af324f9d">2,607,274</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE5LTMtMS0xLTA_f0a4c076-0d75-4407-ae1a-19b8b5d21e3b">2,191,614</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">LIABILITIES AND SHAREHOLDERS' EQUITY</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accounts payable</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzIzLTEtMS0xLTA_3c80956d-50e5-4573-aa5f-277241a71db2">14,011</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzIzLTMtMS0xLTA_bd909405-24cc-4620-a424-57d8ed267c3b">14,977</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accrued liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI0LTEtMS0xLTA_901cce80-4ea4-452e-80f0-f878cd306860">83,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI0LTMtMS0xLTA_08fbee10-0849-469d-ad40-db91220e3e8f">75,234</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI1LTEtMS0xLTA_321b979d-b733-43b3-b23b-55245e89b10e">5,904</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI1LTMtMS0xLTA_12939f7e-1fb6-40bf-9501-ddc436beefbb">6,387</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI2LTEtMS0xLTA_51cd011b-706f-457f-9658-719613240901">461,278</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI2LTMtMS0xLTA_e8eb7a03-3151-4aee-ac11-56be50365d1c">412,495</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total current liabilities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI3LTEtMS0xLTA_05fae687-f8dd-4044-b2b2-15e984f4d8f7">564,277</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI3LTMtMS0xLTA_ee4f7a6e-7eee-4edd-ace4-f1cd216fb769">509,093</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revolving line of credit</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:LongTermLineOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI5LTEtMS0xLTA_ba308d47-af1b-46ad-bb2e-bddd7fb7e6a1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:LongTermLineOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI5LTMtMS0xLTA_047061a8-e323-4945-a020-2b80d920de89">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred revenue, long-term</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMwLTEtMS0xLTA_f9238bc4-6cb7-490f-9154-2932d3de4a02">100</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMwLTMtMS0xLTA_c8121e86-83d3-4687-bbfb-b6c28e1c8d1f">199</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred income taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMxLTEtMS0xLTA_eb7a7c48-b124-4214-8477-bb846903a91f">40,507</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMxLTMtMS0xLTA_4f7799a6-d885-42b4-b481-6db759f900f9">48,442</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease liabilities, long-term</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMyLTEtMS0xLTA_41ff3f30-11d5-42f1-98da-389e77f622d6">16,279</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMyLTMtMS0xLTA_27a25826-522b-43df-8c07-a3fe655f52bf">16,822</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Commitments and contingencies</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:CommitmentsAndContingencies" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM0LTEtMS0xLTA_83900a3a-08bd-443a-b702-494bf05dbcc9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:CommitmentsAndContingencies" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM0LTMtMS0xLTA_31741e25-6d12-4a3d-846f-0ff7de40d236">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shareholders' equity:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Preferred stock, $<ix:nonFraction unitRef="usdPerShare" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTI1_49f334dc-7f17-41ab-be71-a780ccb25a61"><ix:nonFraction unitRef="usdPerShare" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTI1_610e702a-0181-4bf7-8b05-7292f5899b8f">10.00</ix:nonFraction></ix:nonFraction> par value; <ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTM3_4222990b-b824-41fb-af4f-c4abbf67d7dc"><ix:nonFraction unitRef="shares" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTM3_cb8fb428-e467-48ee-87d3-80644e5415da">1,000,000</ix:nonFraction></ix:nonFraction> shares authorized; <ix:nonFraction unitRef="shares" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:PreferredStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTQ0_b599c808-fbaa-4591-9da8-c7e34282a80f"><ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:PreferredStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTQ0_cf5a8bda-8e36-4894-97db-084f2ca621d1">none</ix:nonFraction></ix:nonFraction> issued</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:PreferredStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTEtMS0xLTA_e17e9c29-ff58-4af5-921e-c5f312c40714">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:PreferredStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTMtMS0xLTA_1657b95b-b487-431a-a705-3bb6e599cb2e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Common stock, $<ix:nonFraction unitRef="usdPerShare" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTU2_2347e6f1-ed96-47db-b9c8-bf0a34cfc192"><ix:nonFraction unitRef="usdPerShare" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTU2_2706881b-a822-46b5-bab5-7eb245023179">0.01</ix:nonFraction></ix:nonFraction> par value; <ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTc0_558a5b86-6f12-4d83-bce5-64168102af8d"><ix:nonFraction unitRef="shares" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTc0_ef6745c9-7132-499f-8b7d-e629b7f6ed5b">100,000,000</ix:nonFraction></ix:nonFraction> shares authorized; <ix:nonFraction unitRef="shares" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTkw_127c1bcf-2ceb-416a-acb2-a7ba3a0462ef"><ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTkw_eb514b03-6721-418e-beec-4d932da1d784">48,147,969</ix:nonFraction></ix:nonFraction> shares</span></div><div style="text-indent:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160; issued in 2020 and 2019</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTEtMS0xLTA_3206a52b-b674-49f9-92f2-d399aace2665">481</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTMtMS0xLTA_3d73553b-fbc1-4d14-a274-c2fe829c7121">481</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Additional paid-in capital</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM5LTEtMS0xLTA_04d2f09f-4897-42dd-a7d8-df4d9a7bd385">905,332</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM5LTMtMS0xLTA_7b59bfce-3b41-4d92-a64e-958b2e4f6b1c">739,478</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated other comprehensive loss, net of tax</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQwLTEtMS0xLTA_fecc1fe5-bb02-4946-ae16-62d77e58e5bd">46</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQwLTMtMS0xLTA_59b542c3-69a2-4c68-a3e6-f34a7c0529af">46</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Retained earnings</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQxLTEtMS0xLTA_c1059c96-4795-4d70-8fdf-fb6b9d7fa36e">1,112,156</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQxLTMtMS0xLTA_a91600f1-70e2-433f-ad53-36ed0154cf74">917,336</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Treasury stock, at cost; <ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockShares" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQyLTAtMS0xLTAvdGV4dHJlZ2lvbjoyZDg2ZjMyYmYwMGE0Nzg2YWRlN2FmYzdjZDIzN2JlYV8yNzQ4Nzc5MDY5NTQw_3d61b501-4521-46e2-ad15-b4fe10452aa8">7,608,627</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockShares" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQyLTAtMS0xLTAvdGV4dHJlZ2lvbjoyZDg2ZjMyYmYwMGE0Nzg2YWRlN2FmYzdjZDIzN2JlYV8yNzQ4Nzc5MDY5NTgx_712a8e2f-5824-46e6-9138-8cd7c3e64c36">8,839,352</ix:nonFraction> shares in 2020 and 2019, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQyLTEtMS0xLTA_d3b10156-0284-48ff-bf58-42ef4e7ef5ed">31,812</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQyLTMtMS0xLTA_1acdb895-41fb-4921-9a21-d2970577ddac">40,191</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total shareholders' equity</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQzLTEtMS0xLTA_c5c6219f-80a2-40e0-9e26-fb852f0ef627">1,986,111</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQzLTMtMS0xLTA_a90205a8-f596-4e84-a479-5c971fecc54a">1,617,058</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQ0LTEtMS0xLTA_a551a899-9fef-4d64-8297-4d9db36f8fe8">2,607,274</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQ0LTMtMS0xLTA_ea3729f0-ed05-4e45-9074-ce18e93d7e75">2,191,614</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-5</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_115"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Tyler Technologies, Inc.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated Statements of Cash Flows</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the years ended December&#160;31</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(In thousands)</span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash flows from operating activities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzItMS0xLTEtMA_b49eb374-ab8c-4662-93f4-5f98e21d71f4">194,820</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzItMy0xLTEtMA_32b282d9-a26e-4cea-b144-dbb6eaa5b43e">146,527</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzItNS0xLTEtMA_18d4b489-c5ab-4b3f-84f9-8254bccac508">147,462</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adjustments to reconcile net income to cash provided by operations:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzQtMS0xLTEtMA_4d176cd3-3618-4884-a013-8cb2d81e7e55">81,657</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzQtMy0xLTEtMA_ffcd48c7-328d-4831-bdc8-106b759a39fb">76,672</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzQtNS0xLTEtMA_68d40a4b-03dd-48f4-b692-bab5f4343969">61,759</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Share-based compensation expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzUtMS0xLTEtMA_c3e413e5-5b4e-47e2-8e6d-7ffdacd9cdf4">67,365</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzUtMy0xLTEtMA_69bf965a-b085-4ed6-9830-9d0bafc8aca9">59,967</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzUtNS0xLTEtMA_52bbab36-2f31-456a-abd9-b95df8b93845">52,740</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Provision for losses and sales adjustments - accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzYtMS0xLTEtMA_924769f5-853e-4d59-a526-8f374542f137">3,517</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzYtMy0xLTEtMA_8156a393-23a0-4de1-a7d5-f159e01dcd3a">1,636</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzYtNS0xLTEtMA_7f22517f-70dc-4c47-b607-89510706ee04">569</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease right-of-use assets - non cash </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:OperatingLeaseRightOfUseAssetsNonCash" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzctMS0xLTEtMA_0ed7d0ce-d814-493f-93bb-9181393697bb">5,782</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:OperatingLeaseRightOfUseAssetsNonCash" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzctMy0xLTEtMA_c1e721a3-05b6-41e9-b15e-55f1bbcfae9f">5,397</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="tyl:OperatingLeaseRightOfUseAssetsNonCash" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzctNS0xLTEtMA_53f3c104-2024-43bc-9f33-3704c56adc04">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred income tax benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzgtMS0xLTEtMA_15498e06-9897-4a54-afe0-5b4939f59b31">7,936</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzgtMy0xLTEtMA_df8dc8e1-0f3d-4d19-91fb-2be83e4f9b9d">6,088</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzgtNS0xLTEtMA_bb721c1c-09f6-48fd-9589-5d6c5413e9e0">5,069</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Changes in operating assets and liabilities, exclusive of effects of</span></div><div style="text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160; acquired companies:</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEwLTEtMS0xLTA_aa1e77f1-2e5f-4d87-b9a3-c836410fa198">10,733</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEwLTMtMS0xLTA_7d93cc34-5ab3-4518-84d2-12f88cb5ecf1">65,738</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEwLTUtMS0xLTA_e254d080-f540-412c-adc5-800c4ef4dbf9">50,916</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income tax receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzExLTEtMS0xLTA_cbb1a086-d8c7-4a72-8a0f-6e1cda6e4ed1">15,117</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzExLTMtMS0xLTA_54a08128-c4cf-43ea-9030-f733f007fd13">1,925</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzExLTUtMS0xLTA_6db93668-c1a0-4b2a-b64a-161087d4d58a">6,642</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEyLTEtMS0xLTA_ee33934a-5a12-4053-9251-910501ed098d">8,304</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEyLTMtMS0xLTA_4a6a1fff-6fc3-46ae-b47c-fa744bf1c1d0">8,976</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEyLTUtMS0xLTA_a1f254fc-4381-4943-9605-46e7f5796f15">588</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEzLTEtMS0xLTA_32cbfd24-4e7d-4420-8fa2-3f8722ce83c0">967</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEzLTMtMS0xLTA_f6b630f3-1e38-43eb-93aa-7c6bbf459ec8">7,403</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEzLTUtMS0xLTA_2b259299-d919-4a17-9993-4e7ccc8241ce">2,416</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="tyl:IncreaseDecreaseInOperatingLeaseLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE0LTEtMS0xLTA_8c9cdc22-edb0-48c7-b043-0b870a49e28d">6,549</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="tyl:IncreaseDecreaseInOperatingLeaseLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE0LTMtMS0xLTA_5a28dada-e343-4516-9897-2d83e336fcd4">6,113</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="tyl:IncreaseDecreaseInOperatingLeaseLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE0LTUtMS0xLTA_133750b7-dde7-4e99-82bc-30d06a0eb084">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accrued liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE1LTEtMS0xLTA_26c86b58-9a66-4831-9e9a-64c446509cc1">2,870</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE1LTMtMS0xLTA_5f4e099f-59e5-438c-a3c1-063887324c83">1,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE1LTUtMS0xLTA_59919222-1a10-4d68-a3f5-005317c2579f">2,445</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE2LTEtMS0xLTA_a4ffc364-6df1-4420-81b4-e9267b2a9729">48,684</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE2LTMtMS0xLTA_370ddb4a-da1e-4dea-a428-bac88803109b">44,442</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE2LTUtMS0xLTA_00ec15df-d3ee-436c-9c86-40c88ba992d0">43,603</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net cash provided by operating activities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE3LTEtMS0xLTA_70d1c826-5618-4fd4-8c4e-f1c06dc52e32">355,089</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE3LTMtMS0xLTA_eb05d696-b449-4c11-8f2c-4a443be17df7">254,720</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE3LTUtMS0xLTA_deef45f1-92df-4bd5-b043-043cffb03e28">250,203</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash flows from investing activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Additions to property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIwLTEtMS0xLTA_fe44ccba-1aef-4045-922e-c8e95d4af46c">22,690</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIwLTMtMS0xLTA_d10b15a0-b160-4a9f-bfdb-d8d52aa96347">37,236</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIwLTUtMS0xLTA_f6b1d76d-5b91-499b-8475-ee2b3a5a3ec7">27,424</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchase of marketable security investments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireMarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIxLTEtMS0xLTA_0a3ee765-ef7f-4a4c-971b-71b96b87e31e">156,618</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireMarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIxLTMtMS0xLTA_59e2e0aa-6858-4251-b60e-7c3dada987be">54,742</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireMarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIxLTUtMS0xLTA_b66ba26a-80f4-4f09-9df8-969704dbd454">115,625</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Proceeds from marketable security investments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIyLTEtMS0xLTA_68042b43-558e-4789-9925-cfc7ccd01098">82,742</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIyLTMtMS0xLTA_8cedf24f-750c-44a8-af98-126dbb3426a6">70,796</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIyLTUtMS0xLTA_e5f47e77-2ee7-4809-b34b-e892b0c99da2">81,205</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchase of equity investment in common shares</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTEtMS0xLTE0MzY_fbbe0189-f20d-4e8e-ac5b-51d478435974">10,000</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTMtMS0xLTE0MzY_50e58207-79a4-496c-ad5e-43dbf6a016bb">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTUtMS0xLTE0MzY_89174a7d-264d-485d-b4fe-3bec3d2fb537">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Proceeds from the sale of equity investment in preferred shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromSaleOfEquityMethodInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTEtMS0xLTE0MzY_100cb5e1-2774-41f5-8ff3-017be92fa80d">15,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:ProceedsFromSaleOfEquityMethodInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTMtMS0xLTE0MzY_7d10d748-5935-4b25-b3ee-fd5bd43cfd8b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:ProceedsFromSaleOfEquityMethodInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTUtMS0xLTE0MzY_f8e23d7c-16dd-4f14-8f9d-4c13e0624730">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capitalized software development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsForSoftware" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTEtMS0xLTA_1371d549-4e61-4ef2-a114-7b9f18cb3903">5,776</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsForSoftware" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTMtMS0xLTA_ae2280ff-c58a-400a-9523-7cf5aad379b1">4,804</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:PaymentsForSoftware" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTUtMS0xLTA_d9f22f53-b5f8-47bc-88ab-d718223533d5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of acquisitions, net of cash acquired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTEtMS0xLTA_3c9d1514-917c-416b-a3fc-f4c674b59533">1,292</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTMtMS0xLTA_8533d0d1-8497-4d43-b910-c7c3cecdadd7">218,734</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTUtMS0xLTA_155a14e0-14cc-44f8-8463-e0ced9a69155">178,093</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Decrease (increase) in other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI1LTEtMS0xLTA_82cc2213-e2c2-4553-bba5-9a012f9f0ae0">314</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI1LTMtMS0xLTA_18e6c1d6-1b75-4035-acd3-ff795d2eca05">295</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI1LTUtMS0xLTA_80e7f6b1-a333-45c3-8276-84f2793f1540">1,682</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net cash used by investing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI2LTEtMS0xLTA_b3dc1c48-bc1e-4e64-b8ea-15f0118b0643">98,320</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI2LTMtMS0xLTA_79f27f90-d2ba-44ee-8a9a-7d0a2b4acee7">245,015</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI2LTUtMS0xLTA_391c64de-c12f-48d3-b8ec-a4a478506593">238,255</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash flows from financing activities:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Decrease in net borrowings on revolving line of credit</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI5LTEtMS0xLTA_9f53e55a-0d5d-49a6-bfe3-7f1d35205105">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI5LTMtMS0xLTA_7fe2d8d2-6fee-4c76-b9bb-e4d29a9e8016">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI5LTUtMS0xLTA_6760ca7e-d8b7-48a0-962c-d5a399b6eb89">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchase of treasury shares</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMwLTEtMS0xLTA_42ce5e5d-1770-4dd2-9a10-0f0c590d977b">15,484</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMwLTMtMS0xLTA_e1875e58-c2fd-4fcc-8a9f-6a6787ab39d9">17,786</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMwLTUtMS0xLTA_8bc80fb7-ba64-45a9-9c97-981bbb2e40f4">146,553</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Payment of contingent consideration</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTEtMS0xLTE0NDY_66a8f9ce-755a-4b62-87db-077069553b09">5,619</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTMtMS0xLTE0NDY_e9af66d9-1fbd-42d2-bddb-d9bd551e2213">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTUtMS0xLTE0NDY_012dae81-eb2f-4f68-9825-d431e290ed30">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Proceeds from exercise of stock options</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMxLTEtMS0xLTA_16941dbf-c6d5-4d7c-9fcc-fa40514de4e1">124,363</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMxLTMtMS0xLTA_5726504d-d0c0-45a1-b68f-473fc19aed42">96,908</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMxLTUtMS0xLTA_a7647f43-2445-4a95-ade8-b11daea6b727">74,907</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Contributions from employee stock purchase plan</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockPlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMyLTEtMS0xLTA_9942d11e-4a6f-4d51-ab54-925c907b8a6b">10,912</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockPlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMyLTMtMS0xLTA_9fb4a17a-8800-4cee-ab1f-1cd61f6a048e">9,576</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockPlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMyLTUtMS0xLTA_79a05ce1-1e65-4be2-b3a4-d3deeec3d54a">8,051</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net cash provided (used) by financing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTEtMS0xLTA_1951ff88-c9bc-4c75-88d8-e1db4fb4b921">114,172</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTMtMS0xLTA_37eb21b1-ce90-4ef5-82d5-e26d4a46ab2c">88,698</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTUtMS0xLTA_d2072824-6e92-4d48-8d77-d102a031d05a">63,595</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net increase (decrease) in cash and cash equivalents</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM1LTEtMS0xLTA_14a36423-6e33-4018-8d87-cfaf212b35fb">370,941</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM1LTMtMS0xLTA_62f18e23-cd0b-4a29-8758-147b1f6f636c">98,403</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM1LTUtMS0xLTA_7643e12d-bbfe-4354-92cb-65937844589a">51,647</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash and cash equivalents at beginning of period</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM2LTEtMS0xLTA_d82ff3e6-5fad-411d-9980-a301587e47c9">232,682</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM2LTMtMS0xLTA_7f70e877-d7c2-4aea-95a8-fdae56488f5a">134,279</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM2LTUtMS0xLTA_ab161544-7880-45a6-8356-7a359e9104fb">185,926</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash and cash equivalents at end of period</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM3LTEtMS0xLTA_bc83a312-5966-4729-a9ac-f54eb0ebaeb1">603,623</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM3LTMtMS0xLTA_b7503072-6016-402b-8cfd-505c2d938b09">232,682</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM3LTUtMS0xLTA_b0ddecd5-8197-4c26-bbfe-d6ca2bf26b8e">134,279</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-6</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_118"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Tyler Technologies, Inc.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated Statements of Shareholders&#8217; Equity</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the years ended December&#160;31, 2020, 2019, and 2018 </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(In thousands)</span></div><div style="margin-bottom:5pt;margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"></td><td style="width:27.869%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.445%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.585%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.838%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.624%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.699%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.117%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.795%"></td><td style="width:0.1%"></td></tr><tr style="height:20pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Common Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Additional<br/>Paid-in<br/>Capital</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Other<br/>Comprehensive<br/>Income (Loss)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Retained<br/>Earnings</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Treasury Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total<br/>Shareholders'<br/>Equity</span></td></tr><tr style="height:20pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at December 31, 2017</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="idf223f37a83546f28faf8e1352d1d155_I20171231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMS0xLTEtMA_9073ea86-dfd8-40d7-aae2-edf6f16e48dd">48,148</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idf223f37a83546f28faf8e1352d1d155_I20171231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMy0xLTEtMA_b2164537-b453-44e2-998a-729bd1af57e5">481</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i370301866763430c80bdb1dbf9376fd4_I20171231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItNS0xLTEtMA_5cead5a9-7f5a-4338-827f-7850ca7a66ef">626,867</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i84e31879d6de46189bf654c346646ad8_I20171231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItNy0xLTEtMA_41de532a-4145-4eed-95b4-3284bd749982">46</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5acd2706ae714def8383f42b3d4180a5_I20171231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItOS0xLTEtMA_114c9494-a3d5-484d-baa3-25da8f40ce9c">624,463</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="id2bf4b9faebc4ff290dc251edf4b6bae_I20171231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMTEtMS0xLTA_51f4f3dc-b3eb-4893-a946-b32adedaad44">10,262</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id2bf4b9faebc4ff290dc251edf4b6bae_I20171231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMTMtMS0xLTA_c7733f1f-d879-4780-92fd-8f233f86ebb7">60,029</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMTUtMS0xLTA_beab8886-8bdf-4b81-be24-2b157fbea164">1,191,736</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3c70a7aba97846fe9a0bc5653fd1b1a3_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzMtOS0xLTEtMA_ad479023-cf73-44bd-a0ac-0dcf8db9d17c">147,462</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzMtMTUtMS0xLTA_07d482c5-35ae-4575-94be-d447d67a8108">147,462</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of shares pursuant to stock compensation plan</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7b6930cb71df41bb9bb8f40e55f1bf01_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzQtNS0xLTEtMA_3fbb45fd-14df-498e-9abd-096fdd0936d9">44,458</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzQtMTEtMS0xLTA_ea235086-6f26-41fa-b7cc-330cccdee08c">1,126</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzQtMTMtMS0xLTA_4f7c3165-4c6a-48bc-8a89-c6bfb566d664">30,449</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzQtMTUtMS0xLTA_f32ef858-6f6b-4e2d-9bbe-2878fd8b9169">74,907</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7b6930cb71df41bb9bb8f40e55f1bf01_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzUtNS0xLTEtMA_fa54d087-02fb-4b6c-ae19-3c60283acbb1">52,740</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzUtMTUtMS0xLTA_247ebb84-802e-45e8-b2a0-8e5341bddb9d">52,740</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of shares pursuant to employee stock purchase plan</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7b6930cb71df41bb9bb8f40e55f1bf01_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzYtNS0xLTEtMA_3822afb3-26f2-4114-8243-e7352762f67b">7,370</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzYtMTEtMS0xLTA_47776e0d-77b0-48c9-8a51-b1cc766a8b74">45</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzYtMTMtMS0xLTA_4c120079-00d3-439f-898b-080dcc613453">681</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzYtMTUtMS0xLTA_9e1f89ac-2956-47b2-8952-ffd74ce56dd6">8,051</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Treasury stock purchases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231" decimals="-3" name="us-gaap:TreasuryStockSharesAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzctMTEtMS0xLTA_2c500787-f7ea-45b1-998c-6cd520dafeaa">781</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzctMTMtMS0xLTA_a59fa01e-d893-47e6-947c-04872f82ddb3">150,050</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzctMTUtMS0xLTA_96b6a96b-b6b6-4274-b51f-585e20e2da23">150,050</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at December 31, 2018</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if74df7a19c3942cb9ff75a6a5d6f1812_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMS0xLTEtMA_a0b84b59-28d4-45fb-9923-75163a5c996d">48,148</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if74df7a19c3942cb9ff75a6a5d6f1812_I20181231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMy0xLTEtMA_377a715f-9bd8-4c42-81e9-839833296037">481</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77fa689a8334d86820dc4579345cd38_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtNS0xLTEtMA_0ccf1f5f-02b7-4058-9caf-98e04c7daf26">731,435</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i016e472e4d6a4a3b833a29b7946751a9_I20181231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtNy0xLTEtMA_af99fe3f-7105-48a2-9804-4dee4795f08e">46</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5fc73f07950541c2bc26454cd9193567_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtOS0xLTEtMA_4c7c871e-abe3-4257-99e8-e782386f0bcb">771,925</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="if63f6f530f2947ac8641e5d47d2459ac_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMTEtMS0xLTA_2fd755d3-bd44-414c-83e3-adc9e59ac5cb">9,872</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if63f6f530f2947ac8641e5d47d2459ac_I20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMTMtMS0xLTA_4d6fb804-ea02-45b8-bfc2-994a550d5189">178,949</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMTUtMS0xLTA_92540d08-9171-4e16-8fc1-4c45112d0a53">1,324,846</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6a4f6e2ccf094812a26851504a3c4697_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzktOS0xLTEtMA_9a6c29f9-5e89-4322-abfa-850d65397d3a">146,527</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzktMTUtMS0xLTA_dfcf5794-bb37-423d-a0c3-15e63e0790ad">146,527</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Retained earnings adjustment-adoption of <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTAtMS0xLTMxMS90ZXh0cmVnaW9uOmU5NGZmNTU3ZDZiODQzN2M4MGNiZjY5ZDUwNmM2ZjcwXzI3NDg3NzkwNjk1MzU_923613e0-f2a8-4401-b2b1-01763b60874a">Topic 842 Leases</span>, net of taxes</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic229aec4702c4eedb9420f1f1c7aa168_I20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTktMS0xLTQz_85144cda-5212-4702-91ed-026e31065327">1,116</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if652526c5d564fdc83d5d5e0b7cad7ce_I20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTE1LTEtMS0zMDc_e75c1275-6cd4-4cf8-ab06-83370a11fa2b">1,116</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 21.25pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercise of stock options and vesting of restricted stock units</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib2a82e2e40424ebd9aa2d7e4c88c8db6_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTUtMS0xLTA_cc67516b-0d1a-4c1e-9cf7-d6653e1b9c8e">52,833</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTExLTEtMS0w_d5d1aa60-e4e8-46ad-b877-a1381bb53700">1,075</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTEzLTEtMS0w_3bcdf2e3-0363-439e-987f-5c4868cea5ac">149,741</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTE1LTEtMS0w_5bf62d29-4a30-4a99-89cb-e4f40d043d82">96,908</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 21.25pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Employee taxes paid for withheld shares for taxes upon equity award settlement</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTExLTEtMS0xMzE0_4316234e-cd9a-4ab7-be3c-1e8627ac70fb">23</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTEzLTEtMS0xMzE0_6c67971f-ae37-48b9-bee4-ca58ae101317"><ix:nonFraction unitRef="usd" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTEzLTEtMS0xMzE0_83e9391c-9187-4b3c-99a3-fc89bffb7079">5,361</ix:nonFraction></ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTE1LTEtMS0xMzE0_e494f447-7370-4d17-82ed-bd2892df02ae">5,361</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib2a82e2e40424ebd9aa2d7e4c88c8db6_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzExLTUtMS0xLTA_bbb1a23d-bd7c-4006-9d81-958c0099cc64">59,967</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzExLTE1LTEtMS0w_f1ca7c72-ffeb-4d54-9fa9-3da440dae455">59,967</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of shares pursuant to employee stock purchase plan</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib2a82e2e40424ebd9aa2d7e4c88c8db6_D20190101-20191231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTUtMS0xLTA_d35ed106-acf6-4cb0-85cf-6252804399e6">909</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTExLTEtMS0w_e992105e-d89f-4339-9e6d-163499fbbb4d">53</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTEzLTEtMS0w_a6a81519-f4fb-4ea1-85a0-fde3031a5aa8">8,667</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTE1LTEtMS0w_94d95152-d75f-492e-886d-3e2b088862ec">9,576</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Treasury stock purchases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" name="us-gaap:TreasuryStockSharesAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEzLTExLTEtMS0w_2f147e27-00fe-40c0-b6e3-4b20f57c9650">72</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEzLTEzLTEtMS0w_fc3a7c8f-698d-46e8-a8ee-ad5d0f1f8147">14,289</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEzLTE1LTEtMS0w_b29ea2b5-559d-4340-88ec-b040ee07fd8e">14,289</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at December 31, 2019 </span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id48ae9bc0d4f4b42a3c41cf57e68c56c_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTEtMS0xLTA_a4e241ae-f5db-40b7-969e-91a2d3317d07">48,148</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id48ae9bc0d4f4b42a3c41cf57e68c56c_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTMtMS0xLTA_a049c8b7-82d9-492f-97ec-8cece2114af7">481</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i45ce7136c2a8459284d712a29362fee9_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTUtMS0xLTA_ed799228-b739-44f6-b921-d34ce876ee4a">739,478</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9ee1619e595146ed837722870c9abb71_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTctMS0xLTA_bf8bdd4e-46ac-4ad4-9b4f-674b3c5ca5fb">46</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iadef3649eac545168fc9afa6d9c92254_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTktMS0xLTA_c5c37669-b0fc-4c11-bdb2-7efb9241dc9a">917,336</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i7ba5419930ea446ab7a1d368294d235f_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTExLTEtMS0w_36bfa23b-8fc8-4f09-9b0e-1d204c85789a">8,839</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7ba5419930ea446ab7a1d368294d235f_I20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTEzLTEtMS0w_094d03c1-ce75-4fe7-89b0-fc75eec97e05">40,191</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTE1LTEtMS0w_35431877-04e6-436a-ab7f-3a09b93712e6">1,617,058</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3cb7d2d57c82434abafa888df519b0b4_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE1LTktMS0xLTA_22aac242-1783-4f33-a49c-3a8e0c63a7cb">194,820</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE1LTE1LTEtMS0w_e3878ab8-781e-4ac6-af70-eb292b813cfa">194,820</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercise of stock options and vesting of restricted stock units</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib7bb27ddbf7242a286b49a1ff342b735_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE3LTUtMS0xLTA_87f9b1f7-dc6f-4baf-b608-9a8a5008a851">90,636</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE3LTExLTEtMS0w_6b28d9c0-b04c-4cf5-adac-3d76c25733ad">1,283</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE3LTEzLTEtMS0w_83e8dede-c199-420a-9a23-62b5cf55f2f1">33,727</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE3LTE1LTEtMS0w_65067b71-8a97-4ded-8b94-8523a82d5d69">124,363</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Employee taxes paid for withheld shares for taxes upon equity award settlement</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231" decimals="-3" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE4LTExLTEtMS0w_efab8e5e-1411-4c98-bef4-e7707eac9626">34</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE4LTEzLTEtMS0w_c143b5d8-d936-4429-b6fc-2ed7a3fff201">12,923</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE4LTE1LTEtMS0w_bf246af7-ea95-4f40-a7d2-8d4b9e9c4b98">12,923</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib7bb27ddbf7242a286b49a1ff342b735_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE5LTUtMS0xLTA_c66bc70e-1b53-4709-a928-2295a8073003">67,365</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE5LTE1LTEtMS0w_92aa2bbe-d867-449f-845a-1a56723a3b0e">67,365</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of shares pursuant to employee stock purchase plan</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib7bb27ddbf7242a286b49a1ff342b735_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIwLTUtMS0xLTA_1b58e9d0-b7ca-4e25-86f2-26860ae953d5">7,853</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIwLTExLTEtMS0w_6c06ad44-73ca-4320-ae3f-7f7cfd323d77">40</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIwLTEzLTEtMS0w_c16985ef-1423-43b8-8b77-dc3d413f3057">3,059</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIwLTE1LTEtMS0w_46e17931-9e96-4771-98b7-3219b8f722f8">10,912</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Treasury stock purchases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231" decimals="-3" name="us-gaap:TreasuryStockSharesAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIxLTExLTEtMS0w_78221448-7da0-4c55-806e-7993802fd50e">59</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIxLTEzLTEtMS0w_d3a15b3e-00d6-48c9-b22d-753efc3ea3be">15,484</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIxLTE1LTEtMS0w_ae58d97a-6df6-4bc4-8f08-c4521a03730b">15,484</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2d65f7316c4047c5923f4c34f57d2ed8_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTEtMS0xLTA_73cb6001-42dc-4fa9-8967-c5c794cad3a8">48,148</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d65f7316c4047c5923f4c34f57d2ed8_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTMtMS0xLTA_5c5aeceb-a47a-40e8-b5fa-e2cfe195165a">481</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id83f6cb9c91c48bfaeb540df6008afe4_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTUtMS0xLTA_85a7090a-d64e-4132-9367-ff1f2db3aef6">905,332</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8931e459110d4fb29c212d1c2b0f9f5f_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTctMS0xLTA_0d93dc2a-526f-42fe-8e30-d93fa8a47ff5">46</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie663b19deda44df6b80a183376dfde36_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTktMS0xLTA_9b328c3a-29fb-4ea8-8fa2-8eaf96a42406">1,112,156</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ia825caf5f5e84ab497faa2b1f3c68363_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTExLTEtMS0w_bcbbfc32-b263-4cc6-8bff-0aa2a1a4cd79">7,609</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia825caf5f5e84ab497faa2b1f3c68363_I20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTEzLTEtMS0w_6b59f301-ede2-48a9-b820-4f01fe58b572">31,812</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTE1LTEtMS0w_4ea85de8-4e9b-4d87-be19-7d90b1826934">1,986,111</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes.</span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-7</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_121"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Tyler Technologies, Inc.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Notes to Consolidated Financial Statements</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(Tables in thousands, except per share data)</span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_124"></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDk2_e9d966fc-7e2c-41a5-8e76-e9770128e782" continuedAt="ib57626da63314d11ac2e218819f93117" escape="true">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</ix:nonNumeric></span></div><ix:continuation id="ib57626da63314d11ac2e218819f93117" continuedAt="i0fafb2b232ba4613849f5c74fb4174b5"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">DESCRIPTION OF BUSINESS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Impact of the COVID-19 Pandemic</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In March 2020, the World Health Organization declared the outbreak of a COVID-19 pandemic ("COVID-19"), which continues to spread throughout the U.S. and the world and has resulted in authorities implementing numerous measures to contain the virus, including travel bans and restrictions, quarantines, shelter-in-place orders, and business limitations and shutdowns. </span><span style="color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While we </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">are unable to accurately predict the full impact that COVID-19 will have on our results from operations, financial condition, liquidity and cash flows due to numerous uncertainties, including the duration and severity of the pandemic and containment measures and associated compliance, the current environment has negatively impacted our revenues for fiscal year 2020. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Because an increasing portion of our revenues are considered recurring in nature, the effect of COVID-19 on our results of operations may also not be fully reflected for some time. We continue to see some impact on our business in the near term with delays in government procurement processes and uncertainty around public sector budgets, as well as delays in implementations caused by travel restrictions, closed offices, or clients shifting focus to more pressing issues. We have addressed those challenges through adapting the way we do business &#8211; encouraging web and video conferencing, conducting virtual sales demonstrations and delivering professional services remotely.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our priorities during this crisis are protecting the health and safety of our employees and our clients. Our IT systems and applications support a remote workforce. Prior to the pandemic, many of our employees worked remotely.  In response to the pandemic, we encouraged all employees who are able to do so to work from home, equipping them with resources necessary to continue uninterrupted. We were able to transition the vast majority of our employees to this work-from-home posture. This reduces the number of team members in our offices to those uniquely needed for essential on-site services, such as network operations support staff, and allows for &#8220;social distancing&#8221; as directed by the Centers for Disease Control ("CDC").</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The pandemic has delayed some government procurement processes and is expected to impact our ability to complete certain implementations, negatively impacting our revenue. It could also negatively impact the timing of client payments to us. We continue to monitor these trends in order to respond to the ever-changing impact of COVID-19 on our clients and Tyler&#8217;s operations.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the twelve months ended December&#160;31, 2020, the impact of the COVID-19 pandemic resulted in lower revenues from software licenses, software services, appraisal services, and other revenues. Lower software licenses compared to prior periods are attributed to slower sales cycles as government procurement processes are delayed and contract signings have been pushed to future periods. Software services and appraisal services revenue declines are attributed to delays in implementations caused by travel restrictions and shelter-in-place orders in effect during the period. Other revenues were lower compared to prior periods primarily as a result of the cancellation of our 2020 Connect user conference. Lower revenues compared to prior periods were offset by cost savings attributed to lower spend on travel, user conferences and trade show expenses, health claims and other employee-related expenses. If, and as travel restrictions are relaxed, we expect software services and appraisal services revenues to increase as the limited number of our clients who require that all or a portion of their services be delivered onsite will be able to receive those services. Also, we are adapting by changing the way we do business, encouraging web and video conferencing, conducting virtual sales demonstrations and delivering professional services remotely, which result in increases in staff utilization rates and billable time.</span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-8</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i0fafb2b232ba4613849f5c74fb4174b5" continuedAt="ib44529177c604c1cb3aecb599b42c288"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues from subscriptions and maintenance, which we consider recurring in nature, comprised <ix:nonFraction unitRef="number" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="3" name="tyl:RecurringRevenuePercentageOfTotalRevenue" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjEzNDY_104c0935-0b1d-4820-8e2a-2481c21177a9">73</ix:nonFraction>% of our total consolidated revenue for the twelve months ended December&#160;31, 2020, and include transaction-based revenue streams such as e-filing and online payments. As of December&#160;31, 2020, we had $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsAndShortTermInvestments" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjEzNTc_37ba6299-5a57-465f-8330-da67865e2d64">758.5</ix:nonFraction> million in cash and investments and <ix:nonFraction unitRef="usd" contextRef="i64fffae190564776a26bd84c84225be2_I20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:LongTermLineOfCredit" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjE0ODk_1593b2ea-e430-4bc6-ba1f-00020b3b538b">no</ix:nonFraction> outstanding borrowings under our credit facility. We also have substantial additional liquidity available through our undrawn $<ix:nonFraction unitRef="usd" contextRef="i64fffae190564776a26bd84c84225be2_I20201231" decimals="-6" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjEzNjI_250e4a32-04a4-4ea7-bd68-9e04cb1ab841">400</ix:nonFraction> million credit facility, which can be expanded through an accordion feature.  During the second quarter of 2020, we completed our annual assessment of goodwill which did not result in an impairment charge. Since our assessment in the second quarter of 2020, we identified no indicators of impairment to goodwill; therefore, we have recorded no impairment as of and for the period ended December&#160;31, 2020. We identified no indicators of impairment to long-lived and other assets and therefore, no impairment was recorded as of and for the period ended December&#160;31, 2020. However, due to significant uncertainty surrounding COVID-19 and market conditions, there are no assurances conditions will not deteriorate in the future.</span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ConsolidationPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDY5_b9add4e7-409d-4a5f-9ae5-be776f3f598a" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PRINCIPLES OF CONSOLIDATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements include our parent company and <ix:nonFraction unitRef="subsidiary" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" format="ixt-sec:numwordsen" name="tyl:NumberOfWhollyOwnedSubsidiaries" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEwMjg_d9c00d17-7d66-426e-8f2b-dfc15e3396d2">eleven</ix:nonFraction> 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 and other comprehensive income. We had no items of other comprehensive income during the years ended December 31, 2020, 2019, and 2018.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDgz_ae3c6e7c-7dfc-4fea-b611-77b1fe67d280" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CASH AND CASH EQUIVALENTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxNDM1Njc_579d5e95-8cbe-4677-8e9c-d4c162f8c848" continuedAt="i04773b6a53eb40439e8eddff3963aac4" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">REVENUE RECOGNITION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Nature of Products and Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Identification of the contract, or contracts, with a customer</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Identification of the performance obligations in the contract</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Determination of the transaction price</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Allocation of the transaction price to the performance obligations in the contract</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Recognition of revenue when, or as, we satisfy a performance obligation</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-9</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="ib44529177c604c1cb3aecb599b42c288" continuedAt="i4bd92042ab6c4b3998ba14d4cdea2488"><ix:continuation id="i04773b6a53eb40439e8eddff3963aac4" continuedAt="ib7baeedccf8049c7bfef09aaae862e1b"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Software Arrangements:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software Licenses and Royalties</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 adjusted if needed, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Post-Contract Customer Support</span></div><div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Computer Hardware Equipment</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Subscription-Based Services:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NTQ_08918ce7-ad26-42b7-86b9-69235399badb">three</span> to <ix:nonNumeric contextRef="i63e0a25031e7488d8d1318bfc863ae0e_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NjA_1bc7ca07-97a4-4e0b-97d8-141d2f315cdd">five years</ix:nonNumeric> or longer in length and billed annually in advance.</span></div></ix:continuation></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i4bd92042ab6c4b3998ba14d4cdea2488" continuedAt="ic3f2735cbda245ada8cbfed035edd8ff"><ix:continuation id="ib7baeedccf8049c7bfef09aaae862e1b" continuedAt="icf848b8202254e958211705b6b629b2e"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 services ratably over the term of the arrangement, which range from <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMjg_6534193c-8989-4ffa-9739-99f420f614b6">one</span> to <ix:nonNumeric contextRef="i63e0a25031e7488d8d1318bfc863ae0e_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:RevenueFromContractWithCustomerContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMzQ_7b3f7b5c-1594-42c1-b85a-3e9a3695ccf3">ten years</ix:nonNumeric>, but are typically for a period of <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzI_08918ce7-ad26-42b7-86b9-69235399badb">three</span> to <ix:nonNumeric contextRef="i63e0a25031e7488d8d1318bfc863ae0e_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzg_1bc7ca07-97a4-4e0b-97d8-141d2f315cdd">five years</ix:nonNumeric>. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other transaction-based fees primarily 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For e-filing transaction fees and certain 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Appraisal Services:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For our property appraisal projects, we recognize revenue using the progress-to-completion method since many of these projects are executed over <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEyMDA2_9f4088ec-ac39-4e93-acc6-7f71ad2066bc">one</span> to <ix:nonNumeric contextRef="i45505cddc67248faaba02d34cb7979d2_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:RevenueFromContractWithCustomerContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxMTM1NDM_ad099101-322d-45c7-9546-0cd5dcc35de1">three-year</ix:nonNumeric> 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Significant Judgments:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="ic3f2735cbda245ada8cbfed035edd8ff" continuedAt="i5f64b4dfca0a44d9b1e70435b8c5ba8a"><ix:continuation id="icf848b8202254e958211705b6b629b2e" continuedAt="i4b23d27a299e42519941477172f66a84"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Contract Balances:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Accounts receivable and allowance for losses and sales adjustments</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 <ix:nonFraction unitRef="number" contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231" decimals="INF" name="tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzE5Nzky_d4f5cc50-e75e-4791-9c56-2fc26cd454a1">5</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231" decimals="INF" name="tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzE5Nzk5_5c041aae-f35f-4e96-835f-cac39db8c86f">20</ix:nonFraction>% 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, and December&#160;31, 2019, total current and long-term accounts receivable, net of allowance for losses and sales adjustments, was $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMTY4_147a32a0-d43b-4abe-b7ae-3337bb545c4e">403.7</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMTc1_af31420b-cde8-4aad-ad92-a687b6c51f62">396.5</ix:nonFraction> million, respectively. We have recorded unbilled receivables of $<ix:nonFraction unitRef="usd" contextRef="id3a0729ea86c4aae9ec5d014190a5e10_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMjM0_0bbfab67-da9b-4389-bcc7-864988746930">140.8</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i5d0e27ba06b44330b51f456deab73ad4_I20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMjQx_e7ff381f-ad06-495e-8210-62c4da31e73a">134.0</ix:nonFraction> million at December&#160;31, 2020, and December&#160;31, 2019, respectively. Included in unbilled receivables are retention receivables of $<ix:nonFraction unitRef="usd" contextRef="ia9d3c7e5c2de4087baba0361c032ede0_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMzM1_b5ef5979-0138-47ad-ae62-e4950e428291"><ix:nonFraction unitRef="usd" contextRef="id4c1cb9adf4046ef95f5f38893efd8ce_I20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMzM1_d7d36d49-de55-45b6-b2ed-553ab25086ea">13.1</ix:nonFraction></ix:nonFraction> million at December&#160;31, 2020, and December&#160;31, 2019, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within <ix:nonNumeric contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231" format="ixt-sec:durday" name="tyl:RevenueFromContractWithCustomerPaymentTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwOTcw_83f81c17-4750-4278-bc86-944018abad19">30</ix:nonNumeric> to <ix:nonNumeric contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231" format="ixt-sec:durday" name="tyl:RevenueFromContractWithCustomerPaymentTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwOTc2_de71ed5d-0b83-433d-b9e3-cf492aa577af">90</ix:nonNumeric> days. 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></ix:continuation></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-12</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i5f64b4dfca0a44d9b1e70435b8c5ba8a" continuedAt="i73865a949d624f7b9b5aa72004b3d8aa"><ix:continuation id="i4b23d27a299e42519941477172f66a84"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We maintain allowances for losses and sales adjustments, which losses are recorded against revenue at the time the loss is incurred. Since most of our clients are domestic governmental entities, we rarely incur a credit loss resulting from the inability of a client to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for losses and sales  adjustments may require revision, include, but are not limited to, managing our client&#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. Our allowance for losses and sales adjustments of $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxNzM0NjM_079921e9-49e8-4e67-a044-8515db579459">9.3</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxNzM0NzE_5ded9497-e6d7-41cd-8d6f-564e0d9600e3">5.7</ix:nonFraction> million at December&#160;31, 2020, and December&#160;31, 2019, respectively, does not include provisions for credit losses. As of January 1, 2020, we adopted ASU 2016-13 and primarily evaluated our historical experience with credit losses related to trade and other receivables. Because we have not experienced any historical credit losses with the majority of our clients, we have no basis to record a reserve for credit losses as defined by the standard.</span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQ5NDc4MDI0Mjk2Nzc_3b11d5ac-eb8e-4e9a-8d68-cd8fbdf8951a" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the changes in the allowance for losses and sales adjustments:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.722%"><tr><td style="width:1.0%"></td><td style="width:62.243%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.631%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzItMS0xLTEtNDU3OQ_35b3eded-9cf1-418f-b743-9790d56c53cf">5,738</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzItMy0xLTEtNDU3OQ_49fa456f-4298-43e4-9ff9-44f297fcd06d">4,647</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzItNS0xLTEtNDU3OQ_8be543b5-c014-4210-b019-9ef72a27f872">5,427</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provisions for losses and sales adjustments - accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzMtMS0xLTEtNDU3OQ_f321c3e2-e507-4ad0-90b8-a3a5c7216dcf">3,517</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzMtMy0xLTEtNDU3OQ_87ec64b6-f976-485d-8635-777ea95371ef">1,636</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzMtNS0xLTEtNDU3OQ_db2d2715-682b-4569-8dee-59f73ae74b22">569</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Collections of accounts previously written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzQtMS0xLTEtNDU3OQ_d6eef095-48d6-4ba4-92c7-f5b530e852a5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzQtMy0xLTEtNDU3OQ_03dd0289-c110-40ab-94c6-5f38b0db3ce6">545</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzQtNS0xLTEtNDU3OQ_b0457928-56d4-42ab-8a02-fe47dfa31d18">211</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzUtMS0xLTEtNDkyMg_350b4b78-541f-4a06-826c-d60ec5c334cb">9,255</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzUtMy0xLTEtNDkyMg_985f46b3-cfd6-4277-8971-9e9729eb5c6e">5,738</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzUtNS0xLTEtNDkyMg_3d8f682f-15b3-4cd0-a718-5b23d15d101e">4,647</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:15pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Deferred Revenue</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Deferred Commissions </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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&#160;<span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDg1_ec9a6f16-bae1-475d-873b-a2db6cd27396">three</span> to <ix:nonNumeric contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:SalesCommissionsAmortizationPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDkx_74af74d0-0032-442b-8809-7a3dd15e4c7b">seven years</ix:nonNumeric>. 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 <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:SalesCommissionRenewalPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIzMjk5_38013de2-576b-47cf-929f-229fc8de1e25">one year</ix:nonNumeric>. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:UseOfEstimates" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDc4_1492ddf9-a5ef-4bc4-8f54-2aa778533396" continuedAt="i4ae4392c9ab949f5991548dd30c50196" escape="true">USE OF ESTIMATES</ix:nonNumeric></span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i4ae4392c9ab949f5991548dd30c50196">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 allowance for losses and sales adjustments; 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.</ix:continuation></span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-13</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i73865a949d624f7b9b5aa72004b3d8aa" continuedAt="i1538724b977c40859fcbc9e22a96d173"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTA0_955718b1-52c7-4e77-a68a-51eee4a3f5bf" continuedAt="ief035768fede4132a3bf908e35df05ec" escape="true">PROPERTY AND EQUIPMENT, NET</ix:nonNumeric></span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ief035768fede4132a3bf908e35df05ec">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><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">RESEARCH AND DEVELOPMENT COSTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We expensed research and development expense of $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI1NjEy_a4706452-1577-4fae-b1b1-43432c9bf3a3">88.4</ix:nonFraction> million in 2020, $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI1NjIy_91d4b5ea-d4c4-4967-ab1f-1ff39dac0f7e">81.3</ix:nonFraction> million in 2019, and $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI1NjM2_ae5c118b-667f-4fed-a800-30430e18db02">63.3</ix:nonFraction> million in 2018.</span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:IncomeTaxPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTEy_2a1335db-0462-4147-b196-cfa3c341cc03" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INCOME TAXES</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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".</span></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDY1_e3c6817d-d417-4255-96eb-a0be5d82e6d9" continuedAt="i2fad32ece478422584883eb1aea02e3b" escape="true">SHARE-BASED COMPENSATION</ix:nonNumeric></span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i2fad32ece478422584883eb1aea02e3b">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzM5_742741b4-d349-4bdd-bcc2-2875ba4c7867">three</span> to <ix:nonNumeric contextRef="i94daf233c3194985b62bde30928670a1_D20200101-20201231" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzQ1_105ca2d8-89c5-4a04-8840-901af330d3a9">six years</ix:nonNumeric> of continuous service from the date of grant and have a contractual term of <ix:nonNumeric contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDI0_93846133-17f7-4f75-8481-b4751b2a39fc">10</ix:nonNumeric> years. Restricted stock unit grants generally vest ratably over&#160;<span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDkx_687d0a58-f81d-42cd-a498-8c22c9cbf84c">three</span> to <ix:nonNumeric contextRef="i5583ee35a5ab41ebaa53632a5c580575_D20200101-20201231" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDk3_ee2f8db4-ac02-447b-88d0-aa735fe25301">five years</ix:nonNumeric> of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;<ix:nonFraction unitRef="shares" contextRef="ibf0996191f544a47aa3252f3c6b8abfa_I20201231" decimals="INF" format="ixt-sec:numwordsen" name="tyl:ShareBasedCompensationShareConversionRateShares" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxNDM1NjI_45f99126-6a3b-4181-b7ec-d593dd4b151e">one</ix:nonFraction>&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods.</ix:continuation> We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Compensation</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. See Note 9 &#8211; &#8220;Share-Based Compensation&#8221; for further information. </span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTEz_9d14357c-89f3-42b4-b8b0-48aaab1e7668" continuedAt="i86d95cfc05284dccab6e8accedb5e27b" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GOODWILL AND OTHER INTANGIBLE ASSETS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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, an impairment charge is recorded against goodwill for the amount of that excess. The impairment is limited to the amount of goodwill in that reporting unit. 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.</span></div></ix:nonNumeric></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-14</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i1538724b977c40859fcbc9e22a96d173" continuedAt="ic48db130b89d40f6b026c1655e44eab3"><ix:continuation id="i86d95cfc05284dccab6e8accedb5e27b" continuedAt="ia98c001a984b434690ff5883818ed84d"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As part of our annual impairment test, our qualitative assessments included our estimated effects of COVID-19 for all reporting units except for the data and insights reporting unit. As a result of these qualitative assessments, we determined that it was not more likely than not that an impairment existed; therefore, we did not perform a Step 1 quantitative impairment test. We did perform a quantitative assessment for goodwill of $<ix:nonFraction unitRef="usd" contextRef="i77474ef608ba4afa8feabe57cb359905_I20201231" decimals="-5" format="ixt:numdotdecimal" name="tyl:GoodwillAssessedForImpairment" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzNDgyOTY_0703b1df-2784-4be7-8818-3fed9efcec2c">75.7</ix:nonFraction> million associated with our data and insights business unit and concluded no impairment existed as of our annual assessment date. For most of our reporting units, goodwill relates to a combination of legacy and acquired businesses and as a result those units have fair values that substantially exceed their underlying carrying values. For other reporting units, in particular our platform technologies and data and insights units, goodwill entirely relates to recently acquired businesses, and as a result those units do not have significant excess fair values over carrying values. The platform technologies and data and insights business units combined goodwill was $<ix:nonFraction unitRef="usd" contextRef="i2345196ee5364b50af4122faa02b1455_I20201231" decimals="-5" format="ixt:numdotdecimal" name="tyl:GoodwillAssessedForImpairment" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzNDkwMTI_fbb147e3-93d4-4bbf-b3b0-a9c3d22aa6f1">152.0</ix:nonFraction> million, or <ix:nonFraction unitRef="number" contextRef="i2345196ee5364b50af4122faa02b1455_I20201231" decimals="2" name="tyl:PercentageOfTotalGoodwill" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzNDkwMjA_f46dd958-ff26-4eb3-9b09-44c16d5194f0">18</ix:nonFraction>%, of total goodwill as of December&#160;31, 2020. Our annual goodwill impairment analysis did not result in an impairment charge. During 2020, we have recorded <ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:GoodwillImpairmentLoss" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzNTAyOTM_2e923115-7622-416b-bb0a-90fda844a1ac">no</ix:nonFraction> impairment to goodwill as no triggering events or changes in circumstances indicating a potential impairment have occurred as of period-end. However, due to significant uncertainty surrounding COVID-19 and market conditions, there are no assurances conditions will not deteriorate in the future.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Determining the fair value of our reporting units involves the use of significant estimates and assumptions and considerable management judgment. We base our fair value estimates on assumptions we believe to be reasonable at the time, but such assumptions are subject to inherent uncertainty. Changes in market conditions or other factors outside of our control, such as a worsening of expected impact of COVID-19, could cause us to change key assumptions and our judgment about a reporting unit&#8217;s prospects. Similarly, in a specific period, a reporting unit could significantly underperform relative to its historical or projected future operating results. Either situation could result in a meaningfully different estimate of the fair value of our reporting units, and a consequent future impairment charge. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been <ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMwMTk3_4eca6103-6a67-433c-916b-42f2466e9437"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMwMTk3_75404afd-53b3-4564-8c33-89a32a6c57d7"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMwMTk3_d7139497-d334-4575-89d1-dcd41f768de9">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> impairments to goodwill in any of the periods presented.&#160;See Note 4 - "Goodwill and Other Intangible Assets" for additional information. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Other Intangible Assets</span></div></ix:continuation><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ia98c001a984b434690ff5883818ed84d">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 <ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMxMjYw_4eca6103-6a67-433c-916b-42f2466e9437"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMxMjYw_75404afd-53b3-4564-8c33-89a32a6c57d7"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMxMjYw_d7139497-d334-4575-89d1-dcd41f768de9">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> impairments of intangible assets in any of the periods presented.</span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDg4_5ac0f711-55b4-4d55-8f2b-0c2ffd49e22f" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">IMPAIRMENT OF LONG-LIVED ASSETS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 disposal group classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There was <ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMyNDQy_06eeed8c-1375-427d-b89b-b9e9942e71db"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMyNDQy_1c366ccc-96ae-4573-be5e-6f1402a6735d"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMyNDQy_3b95086f-2613-41aa-87ae-02c1342eeb84">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> impairment of long-lived assets in any of the periods presented.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTE0_833787e8-84ec-4dcd-8c89-e3e1837b22f6" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">COSTS OF COMPUTER SOFTWARE</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. During the twelve months period ended December&#160;31, 2020 and 2019, respectively, we capitalized approximately $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="tyl:CapitalizedPostAcquisitionSoftwareDevelopmentCosts" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMyODUw_361f90dd-e4e8-44a7-bfe5-8cfc93f83f3d">5.8</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="tyl:CapitalizedPostAcquisitionSoftwareDevelopmentCosts" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEwOTk1MTE3MDE5MTk_16ba217a-85f9-4f4a-8b9a-adf266b5cac4">4.8</ix:nonFraction> million 2019 of software development costs. 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, <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:RemainingEstimatedEconomicLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMzMTY4_51599b78-5898-40ab-a393-da037d92f671">five years</ix:nonNumeric>. Amortization of software development costs was approximately $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CapitalizedComputerSoftwareAmortization1" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMzMjM5_b05f054e-5e16-45d6-8e29-017aa2c1e952">1.2</ix:nonFraction> million in 2020 and $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CapitalizedComputerSoftwareAmortization1" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEwOTk1MTE3MDIwMTQ_d4bef1f6-0008-456f-a352-8c3d5b5dc901">0.3</ix:nonFraction> million in 2019, 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:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-15</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="ic48db130b89d40f6b026c1655e44eab3" continuedAt="i10fa519774c540009f84dddc337d29ae"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:BusinessCombinationsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDU3_2653274d-95f7-418a-a8d9-909b1069ba04" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONTINGENT PURCHASE CONSIDERATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDg2_c88e29a7-a596-4a64-bd87-227d2bf8f99a" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">FAIR VALUE OF FINANCIAL INSTRUMENTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we have $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireHeldToMaturitySecurities" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM0MzA2_49b2d9f1-e8cf-47b6-ba59-968f1b3008c2">154.8</ix:nonFraction> million in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from 2021 through 2028.&#160;We intend to hold these bonds to maturity and have classified them as such. We believe cost approximates fair value because of the relatively short duration of these investments. 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 other observable market data. These investments are presented at amortized cost and are included in short-term investments and non-current investments in the accompanying condensed consolidated balance sheets.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we have an accrued interest receivable balance of  approximately $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InterestReceivable" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjcxNDE_b605a28b-08ef-4f9f-a88d-b429e5681244">896,000</ix:nonFraction> which is included in accounts receivable, net. We do not measure an allowance for credit losses for accrued interest receivables. We record any losses within the maturity period of the investment and any write-offs to accrued interest receivables are recorded as a reduction to interest income in the period of the loss. During the twelve months ended December&#160;31, 2020, we have recorded no credit losses. Interest income and amortization of discounts and premiums are included in other income, net in the accompanying consolidated statements of income.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2020, we sold our $<ix:nonFraction unitRef="usd" contextRef="i78dfe745fd3144b0822619031b7bdbde_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM0ODQy_8ef5a4dc-d442-4c19-8bc1-025076c5d95e">15.0</ix:nonFraction> million investment in convertible preferred stock representing a <ix:nonFraction unitRef="number" contextRef="i78dfe745fd3144b0822619031b7bdbde_I20201231" decimals="2" name="tyl:CostMethodInvestmentOwnershipPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM0OTAw_fe95991d-12c4-4e5d-8418-5fbe099718a9">20</ix:nonFraction>% interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings to BFTR, LLC, a wholly owned subsidiary of Bison Capital Partners V L.P. During the same period, we purchased $<ix:nonFraction unitRef="usd" contextRef="i39b2eaa37ed24792a9ca54053db123b6_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjcyNDQ_700d23d5-3c2d-48ab-818a-4d4299343540">10.0</ix:nonFraction> million in common stock representing a <ix:nonFraction unitRef="number" contextRef="i39b2eaa37ed24792a9ca54053db123b6_I20201231" decimals="2" name="tyl:CostMethodInvestmentOwnershipPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjcyODA_ea8fb049-3b69-4b17-b69b-cde447bc8d62">18</ix:nonFraction>% interest in BFTR, LLC. The investment in common 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. Periodically, our cost method investments are assessed 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. No events or changes in circumstances have occurred during the period that require reassessment.  There has been <ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM1NjQw_009cce45-faf2-43ff-a508-7e4e17a91a32"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM1NjQw_17163425-c5f5-4446-b573-aee4f694a400"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM1NjQw_9514748a-c28b-4f35-a705-133a4cb4b5ab">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> 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:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ConcentrationRiskCreditRisk" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTAw_6361120c-ee10-4959-8cd9-26f3e3ca4d33" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONCENTRATIONS OF CREDIT RISK </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020, we had cash and cash equivalents of $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM2MzU3_1d10129a-1e9a-408e-97df-ada124917d23">603.6</ix:nonFraction> million. We perform periodic evaluations of the credit standing of these financial institutions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We maintain allowances for losses and sales adjustments, 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 losses and sales adjustments 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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:LesseeLeasesPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTA4_39960dc4-46c6-4858-916c-d6e6dd595214" continuedAt="ibd000a0269114549bb820575c79ce985" escape="true"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">LEASES</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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></ix:nonNumeric></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-16</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i10fa519774c540009f84dddc337d29ae"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ibd000a0269114549bb820575c79ce985">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.</ix:continuation> </span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:GuaranteesIndemnificationsAndWarrantiesPolicies" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTI4_d7fe806f-c21d-4f1b-92c4-86032769c611" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INDEMNIFICATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:PriorPeriodReclassificationAdjustmentDescription" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTE4_83a4abd9-010c-40ba-b6aa-816e0e9358a9" continuedAt="i60c0f30fb2984f93947835bc6c6592e5" escape="true">RECLASSIFICATIONS</ix:nonNumeric></span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i60c0f30fb2984f93947835bc6c6592e5">Certain amounts for previous years have been reclassified to conform to the current year presentation. As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;T segments have been adjusted to reflect the segment change. See Note 14 - "Segment and Related Information" for additional information.</ix:continuation> </span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDY3_3f5b5e6e-1031-45f5-88fb-0ccb3bfa52ea" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2016, the FASB issued ASU 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financial Instruments - Credit Losses,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#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, available for-sale debt securities, 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 an 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 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.  As of January 1, 2020, we adopted the new standard with no material impact of credit losses to our trade and other receivables, held-to-maturity debt securities and retained earnings included in our condensed consolidated financial statements.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">O</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">n January 26, 2017, the FASB issued ASU No. 2017-04, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Simplifying the Test for Goodwill Impairment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The new standard eliminates Step 2 from the goodwill impairment test. An entity should recognize a goodwill impairment charge for the amount by which the carrying amount exceeds the reporting unit's fair value. This standard is effective for public business entities in fiscal years beginning after December 15, 2019, and the standard was adopted and applied prospectively by the Company as of January 1, 2020, but it did not have a significant impact on the Company's financial statements and disclosures.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NEW ACCOUNTING PRONOUNCEMENTS</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2019, the FASB issued ASU 2019-12,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Simplifying the Accounting for Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, ("ASU 2019-12") which simplifies the accounting for income taxes, eliminates certain exceptions within ASC 740, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, and clarifies certain aspects of the current guidance to promote consistency among reporting entities. The new standard is effective for fiscal years beginning after December 15, 2020. Most amendments within the standard are required to be applied on a prospective basis, while certain amendments must be applied on a retrospective or modified retrospective basis. We do not expect adoption of this standard to have a material effect on our consolidated financial statements.</span></div></ix:nonNumeric></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-17</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_127"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:36pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4Xzc2ODg_e5eab34b-7e5a-40e6-bd40-556ec6b6fefb" continuedAt="i89de3260defb4b01824872323cff2ef9" escape="true">ACQUISITIONS</ix:nonNumeric></span></div><ix:continuation id="i89de3260defb4b01824872323cff2ef9"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">2019</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 $<ix:nonFraction unitRef="usd" contextRef="ied6f64ee5036457f909b03c8c47daa40_D20191030-20191030" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireBusinessesGross" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzM3Mg_d7ee8061-cd6f-4445-8e8d-e3390aacde2a">20.4</ix:nonFraction> million paid in cash. </span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, our final valuation of the fair market value of CHT's assets and liabilities resulted in the adjustment to the preliminary opening balance sheet. These adjustments related to an increased allocation to customer related intangibles and reduction to goodwill of approximately $<ix:nonFraction unitRef="usd" contextRef="ib380b3b73a1a40f99d813fb62fa45604_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzIxOTkwMjMyNzE5NjY_b5bd5395-c443-4697-a939-076bb8860cfb"><ix:nonFraction unitRef="usd" contextRef="ib380b3b73a1a40f99d813fb62fa45604_D20200101-20201231" decimals="-5" sign="-" format="ixt:numdotdecimal" name="us-gaap:GoodwillPurchaseAccountingAdjustments" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzIxOTkwMjMyNzE5NjY_dfa469b5-75cc-441b-aecb-e3f13bc9de91">1.7</ix:nonFraction></ix:nonFraction> million.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 28, 2019, we acquired all of the capital stock of MP Holdings Parent, Inc. dba MicroPact ("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 $<ix:nonFraction unitRef="usd" contextRef="ic847e519530c45bf9016c8ff781dcb50_I20190228" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4Xzg4Mw_5d0f7ae6-e73a-4395-99b0-94c680237c4a">2.0</ix:nonFraction> million, was approximately $<ix:nonFraction unitRef="usd" contextRef="i305eac48da0b40218f74de76b1314f83_D20190228-20190228" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationConsiderationTransferred1" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzkwNQ_ce78f213-ed37-4a8c-9f10-3f146864d11c">201.8</ix:nonFraction> million consisting of $<ix:nonFraction unitRef="usd" contextRef="i305eac48da0b40218f74de76b1314f83_D20190228-20190228" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireBusinessesGross" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzkyMg_0e07a81f-f6a5-4920-b9af-d50494485d14">198.2</ix:nonFraction> million&#160;paid in cash. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, we paid $<ix:nonFraction unitRef="usd" contextRef="ic8168101f57449e9a85433dc8290fd6f_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzM4NDgyOTA3MTA4Nzk_276061e9-a7d9-4881-9998-dff7433ac602">5.6</ix:nonFraction> million in contingent consideration. We have <ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzQ5NDc4MDIzNDA1MDQ_388b9328-11e3-483a-92f3-b9252f9f78b3">no</ix:nonFraction> contingent consideration accrued as of December&#160;31, 2020.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 $<ix:nonFraction unitRef="usd" contextRef="ife54261a0f3d4ca3a8b579d2c9682d64_D20190201-20190201" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireBusinessesGross" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzM0Nzg_f1579193-d736-4bec-85af-b781515a7b6e">3.7</ix:nonFraction> million in cash.</span></div><div style="margin-bottom:9pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, the purchase price allocations for CHT, MicroPact and MyCivic are complete. Our balance sheet as of December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The operating results of all 2019 acquisitions are included with the operating results of the Enterprise Software segment since their date of acquisition. In 2019, we incurred fees of approximately $<ix:nonFraction unitRef="usd" contextRef="i9bdc423139fe439faff35cca3d53f67c_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzQzODM_57b99c9c-f3bf-48f6-b66c-6ae098789946">1.1</ix:nonFraction> million 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></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_130"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(3)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzQ4NA_3251aae8-39ee-4a32-8b8d-522e03b65919" continuedAt="ic4473dc917fc4ce6af88db5afe86b62e" escape="true">PROPERTY AND EQUIPMENT, NET &#160;</ix:nonNumeric></span></div><ix:continuation id="ic4473dc917fc4ce6af88db5afe86b62e"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzQ3OQ_78e689aa-ab5d-4ea5-ae98-99ad69f8ab53" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net consists of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Useful<br/>Lives<br/>(years)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Land</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6866bb1920874c24b16f29ca6bede98b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzEtMy0xLTEtMA_78ef178f-7fa3-4cbc-a877-bd08c91c0358">18,653</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac0ae79f1469490a90790daa11e7f2f0_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzEtNS0xLTEtMA_5747900f-4040-45c3-8b54-6a2c500b5e3f">18,653</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Building and leasehold improvements</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="icc3a8ea7b5b24160ac5abb90cdf333b9_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzItMS0xLTEtMC90ZXh0cmVnaW9uOjZmYjFjOTZjNjM3ZjRlOTBhYzk3OWYwNTY0Y2M4MDc1XzI3NDg3NzkwNjk0NDk_30f910d0-fd75-4aef-b4d1-83d56d76a0b7">5</ix:nonNumeric>-<ix:nonNumeric contextRef="i2746c1cc021146b0aec5e58779f3076e_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzItMS0xLTEtMC90ZXh0cmVnaW9uOjZmYjFjOTZjNjM3ZjRlOTBhYzk3OWYwNTY0Y2M4MDc1XzI3NDg3NzkwNjk0NTQ_dc6d88bf-7c63-4568-bf9c-e9bc2ad37e3e">39</ix:nonNumeric></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3219e002c83348cab50b0e6ffa6b4191_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzItMy0xLTEtMA_560d2b17-1097-49bb-8f8a-98535d456cb3">147,729</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if46f51fb226c43048218559f563502a9_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzItNS0xLTEtMA_15cd9945-bc44-49bb-9ea0-c847f409a93b">137,448</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Computer equipment and purchased software</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="idb690a8e4d1e40d4b27b724094ce54c9_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzMtMS0xLTEtMC90ZXh0cmVnaW9uOmVmNTY3MGFhZDQ3ODQ3NTliNGIxZGM0NzVmYzg4Y2MwXzI3NDg3NzkwNjk0NTk_159f8fcc-bfdf-46e6-a854-bdd8f219d823">3</ix:nonNumeric>-<ix:nonNumeric contextRef="i77f680c29cb34a808e25c0b8104d80f5_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzMtMS0xLTEtMC90ZXh0cmVnaW9uOmVmNTY3MGFhZDQ3ODQ3NTliNGIxZGM0NzVmYzg4Y2MwXzI3NDg3NzkwNjk0NjM_afeeaae3-7522-4ddc-ae89-21703d8235ed">5</ix:nonNumeric></span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i58093d3d479849cfbd2eff31482f9783_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzMtMy0xLTEtMA_946495a8-2628-4217-87c8-e36523c9775f">108,571</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1a65b3cf8d7149d1ade784c3e5c89b3b_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzMtNS0xLTEtMA_3d19fa48-366f-4aa7-b923-6dc2fa05f38b">99,435</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Furniture and fixtures</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="if88cb4be8f1344d09dfd429816868c60_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzQtMS0xLTEtMA_421150d7-9313-49a7-a357-cda7b6dd0dbe">5</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0835333b1817476fae0b3a5feef10690_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzQtMy0xLTEtMA_3b87fd2a-a404-4d1b-a55e-7c4bea125d75">30,666</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iba8cb413cfd641da91dc0775bb79a227_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzQtNS0xLTEtMA_fb27ea21-8952-4483-b675-ebd423d1467d">28,506</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Transportation equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ice971cc672f04378945f87c4139a37f4_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzUtMS0xLTEtMA_fbbfa34c-4c81-4449-913b-cde6b0017289">5</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i929fdd1b837d46ff933ec52c444aa16b_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzUtMy0xLTEtMA_e3e5582c-61ca-437f-9df6-2da547f0a561">295</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id494010e2e764b258a7e6e507f72179a_I20191231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzUtNS0xLTEtMA_708e5a80-1894-4f7f-bd60-549606a44306">402</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzYtMy0xLTEtMA_85f9e35b-4816-4e79-82f6-432027c6d962">305,914</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzYtNS0xLTEtMA_3592eb3d-6c0d-40ff-9ad5-ff83c61d6611">284,444</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated depreciation and amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzctMy0xLTEtMA_4ef69997-2eab-47e1-a1fd-ac6c0b57b8c0">137,910</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzctNS0xLTEtMA_11d5d0d3-7846-4f5d-a91e-781b1c6c1a62">112,583</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzgtMy0xLTEtMA_06583de7-904a-4238-a6db-5710edabf408">168,004</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzgtNS0xLTEtMA_49cc82c6-04f9-4bb8-aca3-009c27cc3665">171,861</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense was $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzEzMw_de657f67-7108-423d-b0aa-324fbe899dfc">25.5</ix:nonFraction> million in 2020, $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzE0Mw_9155ace5-8471-4a76-8edf-1ab6990d2226">23.4</ix:nonFraction> million in 2019, and $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzE1Nw_d19e2781-7a98-48b5-a229-e88a24a8e3d9">21.2</ix:nonFraction> million in 2018.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We paid $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsForCapitalImprovements" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzE2NDkyNjc0NDI1MTU_9a7e9263-040e-4b83-82c9-46629204660f">9.9</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsForCapitalImprovements" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzI3NDg3NzkwNzAyNDA_bb500655-ce13-4578-9cff-ce32feb3f0cc">20.8</ix:nonFraction> million for real estate and the expansion of existing buildings in 2020 and 2019, respectively.</span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-18</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_136"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(4)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwOTU_12a2c7db-cf02-4b52-9d49-c072d6810725" continuedAt="i6dce8c015c3448e192c09226842da983" escape="true">GOODWILL AND OTHER INTANGIBLE ASSETS</ix:nonNumeric></span></div><ix:continuation id="i6dce8c015c3448e192c09226842da983" continuedAt="if10cdbe3ada7495e92e0de326eab0f9a"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfGoodwillTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwOTI_90900dfb-9912-47f6-be6e-0371e708aac9" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying amount of goodwill for the two years ended December&#160;31, 2020 are as follows:</span></div><div style="margin-bottom:14pt;margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:62.233%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.983%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.983%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2018</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if80f7bfbeee84d0f85fffb52339ed359_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzEtMS0xLTEtMA_1549d08c-eaeb-4740-aab7-74951edfb434">739,550</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i73b70e86f2b14fe195929fadc40a68ac_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzEtMy0xLTEtMA_6b6ad9ab-f9db-4ff6-bc59-29e2a0490086">14,168</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzEtNS0xLTEtMA_f705e059-edf5-435d-baf8-f89fdbca6ab9">753,718</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill acquired related to the purchase of MicroPact</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71e9c53e377c4402a13fadc418b82438_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzItMS0xLTEtMA_bbd108ea-41bc-432f-b9fc-b38bd319ee67">76,319</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4abbeb24189541c4b6dde107c2f08de9_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzItMy0xLTEtMA_3976ec68-0a94-4649-b3db-65d0fa197aa2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5803bdc414da480a9dbe249393f7f1a4_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzItNS0xLTEtMA_d4d7b537-9b6b-48d0-aa02-cdb450cf6200">76,319</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill acquired related to other acquisitions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e962ad96fae4176955ee8a514f8468e_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzMtMS0xLTEtMA_042139b7-c2a3-4afb-b25a-9e2a8c86439e">10,080</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if3a281d63b5f4808ba90cf0e318a5207_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzMtMy0xLTEtMA_ac81abdd-32e2-4aed-b134-7309d3a54626">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i77f4f7b40a0a4e9c8e60200ae6adb450_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzMtNS0xLTEtMA_0827a0e7-593f-496f-904b-262165947d1a">10,080</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2019</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i30de2f6d29134baeb9d7fd10ef9c2769_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzQtMS0xLTEtMA_8c29bdab-4b35-40b1-9ae7-8780594349bb">825,949</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i04a262b445d242e0bc9ec15c5b189ca5_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzQtMy0xLTEtMA_28df6bf5-ee80-4ae5-bbb4-95127c0097fc">14,168</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzQtNS0xLTEtMA_49f05b69-f055-447a-9c4e-62d188933b7c">840,117</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchase price adjustments related to CHT acquisition</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1b2789605e86461fb518b096c797b999_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:GoodwillPurchaseAccountingAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzYtMS0xLTEtMA_e3c483e9-9074-4c72-b53c-c89cb9c5f620">1,689</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id9eb4c1627904b098348ff6d8e2672a8_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillPurchaseAccountingAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzYtMy0xLTEtMA_afbe0c69-9bac-4066-806e-05ce803a6b1f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib380b3b73a1a40f99d813fb62fa45604_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:GoodwillPurchaseAccountingAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzYtNS0xLTEtMA_88649bc6-7bf6-4bdf-845c-2a4f26cfba79">1,689</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifd8cb8d148054fdaac26c7fe42e99562_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzctMS0xLTEtMA_6878aaf5-dc15-4d61-a443-a6de41037da1">824,260</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i791885cd70434284b30f7d4168cf471a_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzctMy0xLTEtMA_2da71bbd-2c40-4698-b8c8-290304ce569f">14,168</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzctNS0xLTEtMA_a1d47689-522c-4bcb-af07-fb7aea7291a9">838,428</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwNzk_5a1414f0-3dff-4656-b026-eec23b2ce170" escape="true"><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other intangible assets and related accumulated amortization consists of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:75.983%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.012%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross carrying amount of other intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Customer related intangibles</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i314ed68cc2a844c397cb8dc976771b9d_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzItMS0xLTEtMA_eac47ac3-f75b-42b3-b341-71d2d67191a8">322,619</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec288e447c034f6b8cf1ba7b7f05c5e7_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzItMy0xLTEtMA_46061eb6-b6ff-4123-bf5d-baa0b5d2b8ad">321,019</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Acquired software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieb33b4efea03473594b246452e01b04d_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzMtMS0xLTEtMA_be602233-76a2-4a75-abea-d89bb288b33c">262,286</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i619de32472a14447b2ac8bd16d2f248a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzMtMy0xLTEtMA_ede8e452-aec8-4dc3-8a12-0a0f6201cb88">262,286</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3d5e11a6c02b4b31af1d4d6cb20eefc5_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzQtMS0xLTEtMA_4f4aee5a-83c1-41cc-aada-1ff47f5bcc01">22,905</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9d3c25ebfdc949c590c6550e4767d78f_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzQtMy0xLTEtMA_bfcc3e66-38c3-495d-9dab-9b4b609aac33">22,905</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capitalized software development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if76b71899a304e0eb9638dc793cbb1ff_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzUtMS0xLTEtMA_03ad953e-bd0c-4451-a014-cc19db531b7f">10,581</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i12489bfd9ab94c08af9a2cb062f4847b_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzUtMy0xLTEtMA_e0ac5467-2164-431b-ac95-7c853d2e4482">4,804</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leases acquired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzYtMS0xLTEtMA_427bea3e-1c4a-4043-a982-758a935b6998">5,037</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0d6fb75fb1f14fd095dad540a4435cd1_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzYtMy0xLTEtMA_28a8f2af-3fa0-4c54-a0e6-f930f5d6ab3c">5,037</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzctMS0xLTEtMA_f1242342-0a18-46c8-b756-a7eed9f6ae5b">623,428</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzctMy0xLTEtMA_e1eff231-e41c-46b1-be95-166d36ab877f">616,051</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated amortization</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzgtMS0xLTEtMA_d38bc087-a4dd-4917-a876-ccd3c7c88c1d">292,239</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzgtMy0xLTEtMA_943c856b-e9f2-4f6b-a764-fe45b1bebe77">237,137</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total other intangibles, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzktMS0xLTEtMA_cb33296d-b0ee-4f1a-98b2-dfc85d6997e2">331,189</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzktMy0xLTEtMA_c7c59415-7223-46df-b091-e8ce728762da">378,914</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzU0MQ_9d5b7578-3620-4a7d-a8a5-3ec0aa6b53e5">55.1</ix:nonFraction> million in 2020, $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzU1MQ_4bdb4561-18e9-4654-a7ba-c5ebf5d4cf78">52.8</ix:nonFraction> million in 2019, and $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzU2NQ_cdcd547d-488a-4b6e-8436-fc9df4749aec">39.6</ix:nonFraction> million in 2018.&#160;</span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwODk_0251dedd-1a86-49e4-b6c3-85c36f6e7ab5" escape="true"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amortization periods of other intangible assets is summarized in the following table:</span></div><div style="margin-bottom:5pt;margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"><tr><td style="width:1.0%"></td><td style="width:34.235%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.100%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Amortization<br/>Period</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Amortization</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Amortization<br/>Period</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Amortization</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-amortizable intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzMtMS0xLTEtMA_da9e2167-e57f-42b9-8114-37c7cba8a79e">838,428</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzMtNy0xLTEtMA_dee51f5f-b54b-4ad1-9d0b-58942c8b7ea1">840,117</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortizable intangibles:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Customer related intangibles</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i314ed68cc2a844c397cb8dc976771b9d_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtMS0xLTEtMA_5a7e61f7-bbc6-43c5-8d6d-adb8d3d220b6">322,619</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i85174adb41d4484092b78a7104980b10_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtMy0xLTEtMA_159598bc-1c79-4ad5-8d9a-ce17a4831fed">16</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i314ed68cc2a844c397cb8dc976771b9d_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtNS0xLTEtMA_1de5d623-ab89-4a39-96d5-c44872503451">116,609</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec288e447c034f6b8cf1ba7b7f05c5e7_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtNy0xLTEtMA_b2d631fb-114d-41b4-926a-5d6b5dcbac82">321,019</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ia676244b50ab49529c59c19f228664bc_D20190101-20191231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtOS0xLTEtMA_544542c0-e900-47e2-b4ae-1a41d6ed299f">16</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec288e447c034f6b8cf1ba7b7f05c5e7_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtMTEtMS0xLTA_126da26e-ebbf-4bbb-a6fe-44b3f602dd31">97,320</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Acquired software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieb33b4efea03473594b246452e01b04d_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtMS0xLTEtMA_09f14f62-686b-44b0-9d04-d2b1f5dc2f45">262,286</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i07476736cfec4b56a28475a43618cde8_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtMy0xLTEtMA_e8374d00-af62-472c-ad66-20054d5d06af">7</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieb33b4efea03473594b246452e01b04d_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtNS0xLTEtMA_c220e430-52a4-484e-9d57-e45af2e14afc">162,378</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i619de32472a14447b2ac8bd16d2f248a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtNy0xLTEtMA_74105e5e-20a6-4563-a598-efc0115c433d">262,286</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i9b12338499724618a2f10c02c169b31d_D20190101-20191231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtOS0xLTEtMA_f59a2f25-00f5-450c-9986-86e8089a36af">7</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i619de32472a14447b2ac8bd16d2f248a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtMTEtMS0xLTA_cc171c9d-9647-4d93-923f-91580398f0fa">130,416</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3d5e11a6c02b4b31af1d4d6cb20eefc5_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctMS0xLTEtMA_7a88a7b3-b4b9-4e69-bc24-43aedddec185">22,905</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i32d834599c984f9ebf196a393bf7b1e1_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctMy0xLTEtMA_baea286b-5a70-4b26-a9d9-69ded2b7de98">11</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3d5e11a6c02b4b31af1d4d6cb20eefc5_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctNS0xLTEtMA_47b132c0-055d-48c2-b660-a47d57d0f89c">9,366</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9d3c25ebfdc949c590c6550e4767d78f_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctNy0xLTEtMA_d4034196-7255-4a52-832b-68f0239942c2">22,905</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ie844a30b32d14f259d80645725dfc9e7_D20190101-20191231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctOS0xLTEtMA_f8bc550f-88d1-4526-8a84-d5eb90523fd0">11</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9d3c25ebfdc949c590c6550e4767d78f_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctMTEtMS0xLTA_f3a3ddeb-84f6-4fb9-af9e-09ca169769d9">7,205</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capitalized software development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if76b71899a304e0eb9638dc793cbb1ff_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtMS0xLTEtMA_0f32350c-b2b2-4665-afe3-71eec984f5ff">10,581</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i05d88abff85f46cd8730d3d2b41c3a52_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtMy0xLTEtMA_f9af9338-cf35-418d-b62a-61a82bbc9a6a">5</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if76b71899a304e0eb9638dc793cbb1ff_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtNS0xLTEtMA_1f272773-0908-4edd-8aed-d367672051cb">1,460</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i12489bfd9ab94c08af9a2cb062f4847b_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtNy0xLTEtMA_7c00466c-b69e-4553-93ac-de41aa3f15cf">4,804</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i4e10c2b062704e0d89feb98366351063_D20190101-20191231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtOS0xLTEtMA_b239f945-0755-47fa-8d47-ae5c7e6354e8">5</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i12489bfd9ab94c08af9a2cb062f4847b_I20191231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtMTEtMS0xLTA_1bb3e5f3-0628-411f-a84f-e1e96f37885b">296</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leases acquired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktMS0xLTEtMA_af5f5eaa-3166-4ae2-9b52-629e7fed7771">5,037</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ib35a4cc09656425db4048e1d9fbfa6a2_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktMy0xLTEtMA_3366efea-be2e-47f9-a857-3028040a7b31">9</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktNS0xLTEtMA_43857d44-29e2-4ba2-92f0-64fa3951e333">2,426</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0d6fb75fb1f14fd095dad540a4435cd1_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktNy0xLTEtMA_798f92d5-b853-4126-a125-f6fb0b9bc776">5,037</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i6b228d04c2874010925935400911f3cb_D20190101-20191231" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktOS0xLTEtMA_4792b427-4003-4fe1-8393-ba583a1c9504">9</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0d6fb75fb1f14fd095dad540a4435cd1_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktMTEtMS0xLTA_b9f90acc-9bf6-46aa-97c6-b64019602194">1,900</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="if10cdbe3ada7495e92e0de326eab0f9a"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimated annual amortization expense related to acquired leases will be recorded as a reduction to hardware and other revenue and is expected to be $<ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzgxNw_ead24741-66e5-4e11-94cd-bec795a5d757">525,000</ix:nonFraction> in 2021, $<ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzgyNw_43672c96-94c8-478b-be28-baf24d6b1889">525,000</ix:nonFraction> in 2022, $<ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzgzNw_581888eb-13b1-4d4e-87a3-406da04045ac">525,000</ix:nonFraction> in 2023, $<ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzg0Nw_eaba2546-9be7-452d-b257-14807b8ce10d">525,000</ix:nonFraction> in 2024, $<ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzg1Nw_62b49197-2f79-4cf4-a8e6-266369fcae32">397,000</ix:nonFraction> in 2025, and $<ix:nonFraction unitRef="usd" contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzg3MQ_867b1d57-c987-4ce1-8f89-31655a1aba47">114,000</ix:nonFraction> thereafter</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">. </span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwODA_657fdb20-866b-4dec-853a-67a7f7a72f7c" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs. Capitalized software in progress of $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CapitalizedComputerSoftwareGross" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzIxOTkwMjMyNTY5Mjg_0a6b17fb-db65-4f34-a502-7c32de649a6b">4.5</ix:nonFraction> million has been excluded from the estimated annual amortization expense table below:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:62.777%"><tr><td style="width:1.0%"></td><td style="width:84.961%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.839%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzAtMS0xLTEtMA_c0f6956d-c10b-4e71-a8cc-9e5a8b4d8956">54,411</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzEtMS0xLTEtMA_245b0892-a7ed-414b-a768-63859a6659a6">50,713</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzItMS0xLTEtMA_cc0aa5d2-eb43-4cc4-b287-b47a87a07b1a">32,562</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzMtMS0xLTEtMA_63145fa8-0dc4-4912-9847-3fcfe34c7e6b">31,978</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzQtMS0xLTEtMA_7bcfb125-5ad9-486e-9837-d8a839a66c64">30,622</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzUtMS0xLTEtMA_3d4327fb-ebee-4daf-97b6-91efa8136fdb">123,805</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzYtMS0xLTEtNDQwOA_bf539b41-ac16-4862-ada2-d2bd7f9f1ee6">324,091</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_139"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(5)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90ZXh0cmVnaW9uOjAyZTRkMjkyNDg3OTRjZmJiNmYxZGM5MmI3OGEzZDNjXzkw_fea04326-edd1-4844-b193-1e8bf863dc9c" continuedAt="i81e8ce4af68e4d2582bcfeef924742ee" escape="true">ACCRUED LIABILITIES</ix:nonNumeric></span></div><ix:continuation id="i81e8ce4af68e4d2582bcfeef924742ee"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90ZXh0cmVnaW9uOjAyZTRkMjkyNDg3OTRjZmJiNmYxZGM5MmI3OGEzZDNjXzk1_80ad1fd8-ac27-4f2a-9de4-0d7ff10002f0" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consist of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:70.427%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.791%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accrued wages, bonuses and commissions</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzEtMS0xLTEtMA_fbe303e1-3a7b-4ec6-bb11-cdffaa21c267">63,814</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzEtMy0xLTEtMA_af594fe2-5a2c-449d-a4dd-c78b33b06f5a">49,126</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other accrued liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzItMS0xLTEtMA_8956912a-edef-41ae-9bd4-025a3580e107">19,270</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzItMy0xLTEtMA_6186df6f-42ce-4813-a5c8-33336004fa0e">26,108</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzMtMS0xLTEtMA_fff9add5-5423-4290-beb0-7f8838fc0ec5">83,084</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzMtMy0xLTEtMA_21cc1270-25ff-41fc-8596-e978b3ebbdb1">75,234</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_142"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(6)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:DebtDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzE0NTc_9a550bf7-802e-4d6c-9ced-0f54dc000b05" continuedAt="i231040d3a0ec4240ac6bae17851d2626" escape="true">REVOLVING LINE OF CREDIT</ix:nonNumeric></span></div><ix:continuation id="i231040d3a0ec4240ac6bae17851d2626"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September&#160;30, 2019, we entered into a $<ix:nonFraction unitRef="usd" contextRef="i0b793b88738448c8b424e13b38750dfe_I20190930" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzU2_c06437e0-0344-498a-8da7-b3ebfe192640">400</ix:nonFraction> million 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 unsecured revolving credit in an aggregate principal amount of up to&#160;$<ix:nonFraction unitRef="usd" contextRef="i0b793b88738448c8b424e13b38750dfe_I20190930" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzMyNA_c06437e0-0344-498a-8da7-b3ebfe192640">400</ix:nonFraction> million, including a $<ix:nonFraction unitRef="usd" contextRef="i2ba12eae25fc408f819a9460e865b419_I20190930" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzM0MA_fdd58377-b2fd-4b44-b192-c868e9fc6f57">25</ix:nonFraction> million sublimit for letters of credit. The Credit Facility matures on September&#160;30, 2024. Borrowings under the Credit Facility may be used for general corporate purposes, including working capital requirements, acquisitions and share repurchases.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 <ix:nonFraction unitRef="number" contextRef="i895d9f7aa1c94c2197d32ead27eda95d_D20190930-20190930" decimals="INF" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzczNw_0834fddf-96d9-4ee5-ac0d-3ab06f2242eb">0.125</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="i08f4d489526345e7985462400385c9e3_D20190930-20190930" decimals="INF" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzc0Mw_2467c5bf-04f9-4fe3-b179-df8c1fc50202">0.75</ix:nonFraction>% or (2) the 30, 60, 90 or 180-day LIBOR rate plus a margin of <ix:nonFraction unitRef="number" contextRef="i6f87819252ba4d4b8f5ec2969bfc24fd_D20190930-20190930" decimals="INF" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzgwNw_5cc60e8c-e8e1-4fcc-8689-d7b483dfdcc9">1.125</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="i1762aa0ea46e431289b30c6cb3c49679_D20190930-20190930" decimals="INF" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzgxMw_a8bf0386-4930-466b-843d-aacaee0fb2b0">1.75</ix:nonFraction>%.&#160; As of December&#160;31, 2020, our interest rate was <ix:nonFraction unitRef="number" contextRef="i64fffae190564776a26bd84c84225be2_I20201231" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzg1MA_9b5e3e58-ec9b-4118-9ca0-a98bfddee795">3.38</ix:nonFraction>% under the prime rate option or approximately <ix:nonFraction unitRef="number" contextRef="ibf1b14c92e824bdeac21fa748bda20f6_I20201231" decimals="4" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzg5OA_ce85f17b-f82e-48d1-b008-11b738bca24e">1.27</ix:nonFraction>% 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 December&#160;31, 2020, we were in compliance with those covenants.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2020, we had <ix:nonFraction unitRef="usd" contextRef="i64fffae190564776a26bd84c84225be2_I20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:LongTermLineOfCredit" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzEyNDg_1593b2ea-e430-4bc6-ba1f-00020b3b538b">no</ix:nonFraction> outstanding borrowings and had unused borrowing capacity of $<ix:nonFraction unitRef="usd" contextRef="i64fffae190564776a26bd84c84225be2_I20201231" decimals="-6" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzEzMTE_250e4a32-04a4-4ea7-bd68-9e04cb1ab841">400</ix:nonFraction> million under the Credit Facility</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> In addition, as of December&#160;31, 2020, we had one outstanding standalone letter of credit totaling $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-6" format="ixt:numdotdecimal" name="us-gaap:LettersOfCreditOutstandingAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzEzNzE_2b34fc6a-2bc0-4027-b24e-f80d20e6f189">2</ix:nonFraction> million in favor of a client contract. The letter of credit guarantees our performance under the contract and expires in 2021.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We paid interest of $<ix:nonFraction unitRef="usd" contextRef="id2bea65be2e44fcf810050142e2320ff_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InterestPaidNet" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzIxOTkwMjMyNTczNzI_8e384099-2a8e-4d56-9662-999f30670837">610,000</ix:nonFraction> in 2020, $<ix:nonFraction unitRef="usd" contextRef="iaeffcc8d31f34ceeaaea2f0110344bb9_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InterestPaidNet" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzE0MzQ_de1739fe-2faa-4ae3-9b4c-bc2fe71dd9ee">1,750,000</ix:nonFraction> in 2019, and $<ix:nonFraction unitRef="usd" contextRef="ia88a5e942ac04b79ae2b9099fbf1302c_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InterestPaidNet" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzE0NDg_589a96f4-6dd5-4b8a-aed3-bee2ffa2e555">770,000</ix:nonFraction> in 2018.</span></div></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_145"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(7)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:IncomeTaxDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1Mzk_fe729485-661c-4493-925a-f5618f909b97" continuedAt="ic5bd92e4f0a94cd59cb12c3fd20e187b" escape="true">INCOME TAX </ix:nonNumeric></span></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ic5bd92e4f0a94cd59cb12c3fd20e187b" continuedAt="i1ec47714cadb434b96e02331949dac6d"> <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1NDA_7d905159-eecb-4633-ac80-667c6c87bfa4" continuedAt="ia0e023b59af3466b8479eb275a5b3fef" escape="true">Income tax (benefit) provision on income from operations consists of the following:</ix:nonNumeric></ix:continuation></span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-20</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="i1ec47714cadb434b96e02331949dac6d" continuedAt="i7f11658e1d5e494db05497b5cb0c83c8"><div style="margin-bottom:14pt;margin-top:12pt;text-align:center"><ix:continuation id="ia0e023b59af3466b8479eb275a5b3fef"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzMtMS0xLTEtMA_feabd3a8-5719-4271-b02b-05580610e8b1">10,538</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzMtMy0xLTEtMA_9298e450-5f26-4be9-a6e2-b16cb81a0044">12,814</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzMtNS0xLTEtMA_bfd972b3-9a9e-4813-834f-a73b87a8992f">9,110</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzQtMS0xLTEtMA_63786f53-35dd-4ebd-87ad-1539f172aec2">1,304</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzQtMy0xLTEtMA_dfb2011b-efb4-431d-8dda-28750d5c3efd">6,585</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzQtNS0xLTEtMA_89faff02-ac7c-4a1c-91ed-e142cee5de7a">4,367</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzUtMS0xLTEtMA_f0dd54b9-1b36-4aa3-9c55-a6ce5e91bba3">11,842</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzUtMy0xLTEtMA_d15ef3c8-9255-4d9a-a5c2-7c2b06a74fbd">19,399</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzUtNS0xLTEtMA_d0cad54c-66a4-4a8e-ad8e-7a00f1901828">13,477</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzYtMS0xLTEtMA_363c9f5d-85d1-4965-ba76-e908847f6d8f">7,936</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzYtMy0xLTEtMA_755d50a7-c059-4588-812f-ca11d00834b2">6,088</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzYtNS0xLTEtMA_5c396d65-9e2e-43d6-a064-ff65346b0ac5">5,069</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzctMS0xLTEtMA_71f86412-6018-4ef4-b643-7eafd9af0209">19,778</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzctMy0xLTEtMA_83c017b5-7fc2-4374-ae7e-28244cdc72ef">13,311</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzctNS0xLTEtMA_513ddb27-41e7-4aac-888a-ce863b0ada78">8,408</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1NDE_46ed3474-afa1-4574-b90b-b766bc37db67" escape="true"><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Reconciliation of the U.S. statutory income tax rate to our effective income tax expense rate for operations follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Federal income tax expense at statutory rate</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzItMS0xLTEtMA_bef62693-57af-4dd7-ba46-3b974343f796">36,759</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzItMy0xLTEtMA_a44b4280-a65a-4a6f-ab93-efa529e09821">33,566</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzItNS0xLTEtMA_67b1e48c-e852-47a4-872a-9c4123cfae05">32,733</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">State income tax, net of federal income tax benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzMtMS0xLTEtMA_abc5101a-1353-459f-b41e-8815b2bec371">6,677</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzMtMy0xLTEtMA_4de77f34-8d99-4180-b875-646de8395eec">6,999</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzMtNS0xLTEtMA_909f47f2-4664-40e6-af30-296fec6b8f28">7,953</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net operating loss carryback</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:NetOperatingLossCarryback" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzQtMS0xLTEtMA_c624c0bb-4a2d-40bf-98be-9f1c0d3a96aa">3,445</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="tyl:NetOperatingLossCarryback" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzQtMy0xLTEtMA_f492e28e-deee-40c3-abc6-2c5e2d4bda5c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="tyl:NetOperatingLossCarryback" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzQtNS0xLTEtMA_3017fbc6-f489-4bd6-b089-5156f3f55d62">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Excess tax benefits of share-based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzUtMS0xLTEtMA_f0c5128d-73e5-4f81-a3fb-42608f691fcc">60,190</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzUtMy0xLTEtMA_e9326d62-14d0-40ef-892b-005f74b02dbb">29,819</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzUtNS0xLTEtMA_18c189d3-18ac-4923-aba1-59b5e028b40c">32,487</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adjustments from the 2017 Tax Cuts and Jobs Act </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzYtMS0xLTEtMA_e711b2e2-e420-44c5-8e91-662052ec9abe">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzYtMy0xLTEtMA_3d57d747-5925-4d69-ad28-bd658034f2ba">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzYtNS0xLTEtMA_6f694f33-ec12-4060-a055-2dbb3a18b7c8">1,750</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Tax credits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationTaxCredits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzctMS0xLTEtMA_a2409c11-3d00-44f0-8b8c-1db47fc02f2e">3,867</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationTaxCredits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzctMy0xLTEtMA_8f134212-4e06-4a31-90e8-550efbd858f0">3,446</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationTaxCredits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzctNS0xLTEtMA_fdf6a384-300a-4063-a50a-69161ce7c949">3,715</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-deductible business expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzgtMS0xLTEtMA_fa84148c-f7ab-48da-9d80-926ab12f3859">4,199</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzgtMy0xLTEtMA_263f54fd-651f-440e-9c3c-ec04e417c2bd">6,011</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzgtNS0xLTEtMA_89e3011d-d129-4b90-9801-1dfeec0ac382">5,655</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzktMS0xLTEtMA_a93c5dcc-26f1-4ac1-af93-b6f9c504623a">89</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzktMy0xLTEtMA_8435804e-19ff-48fa-948e-47ed0248e8e6">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzktNS0xLTEtMA_cc9e4bdf-612a-4c8c-b002-dc5127feafc6">19</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzEwLTEtMS0xLTA_06bcb9f1-092a-40dd-b4c2-85ba4a43be3c">19,778</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzEwLTMtMS0xLTA_3c98517f-8539-4237-addb-bee2871c6640">13,311</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzEwLTUtMS0xLTA_418044db-bb49-4aa8-adbb-2c6c4b14b2f6">8,408</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:12pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Coronavirus Aid, Relief and Economic Security ("CARES") Act, which was signed into law on March 27, 2020, provides an estimated $2.2 trillion to fight the COVID-19 pandemic and stimulate the U.S. economy. The assistance includes tax relief and government loans, and investments and grants for entities in affected industries (e.g., health care, airlines). </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The business tax provisions of the CARES Act include temporary changes to income and non-income based tax laws, including the ability to utilize net operating losses, interest expense deductions, alternative minimum tax credit refunds, charitable contributions, and depreciation of qualified improvement property. Measures not related to income-based taxes include (1) allowing an employer to pay its share of Social Security payroll taxes that would otherwise be due from the date of enactment through December 31, 2020, over the following two years and (2) allowing eligible employers subject to closure due to the COVID-19 pandemic to receive a 50% credit on qualified wages against their employment taxes each quarter, with any excess credits eligible for refunds.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The most significant provision of the CARES Act impacting our accounting for income taxes is the five-year carryback allowance for taxable net operating losses generated in tax years in which the statutory federal income tax rate is 21.0%, to periods in which the statutory federal income tax rate is 35.0%. We intend to carry back our 2020 taxable loss into our 2015 tax year, which results in a $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="tyl:NetOperatingLossCarryback" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzIxOTkwMjMyNjc3ODM_8b08525c-c847-4996-be91-3b278ba6ad0c">3.4</ix:nonFraction> million income tax benefit in the current year.</span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-21</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="i7f11658e1d5e494db05497b5cb0c83c8"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1NDI_0639812f-896d-4b2e-8fdc-d2568a39f891" escape="true"><div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The tax effects of the major items recorded as deferred tax assets and liabilities as of December 31 are:</span></div><div style="margin-bottom:14pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:75.983%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.012%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred income tax assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating expenses not currently deductible</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzItMS0xLTEtMA_af546acf-0b92-4c92-92cd-a2ceec9bf230">9,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzItMy0xLTEtMA_bc0d52d5-0805-402f-b1c2-572e83da2b67">10,214</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock option and other employee benefit plans</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzMtMS0xLTEtMA_9a1de22a-5957-48ed-8445-02d99804c140">17,446</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzMtMy0xLTEtMA_df578354-5874-4713-86e9-44f81fa26c87">19,308</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Loss and credit carryforwards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzQtMS0xLTEtMA_0f9d2252-8ae7-446e-a061-7dda3f541015">27,199</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzQtMy0xLTEtMA_5531eddc-c6e4-4ba2-9bfa-aaca414834da">23,841</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzUtMS0xLTEtMA_b5c1f228-bd46-49ac-bdf7-90188001e54e">53,729</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzUtMy0xLTEtMA_905ca689-315f-4813-96bd-96f672e6b9ef">53,363</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzYtMS0xLTEtMA_32ab5bab-5fe1-4401-85e1-e86fc62a9787">1,490</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzYtMy0xLTEtMA_388e05c0-8da3-435f-aa33-4b5ae3d990db">1,923</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax assets, net of valuation allowance</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzctMS0xLTEtMA_7154f4ad-51c4-4892-a050-1246f67570e4">52,239</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzctMy0xLTEtMA_22e3ef94-0fa5-49de-a593-192697cd2f6c">51,440</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred income tax liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEwLTEtMS0xLTA_21df9083-b1ee-4243-9f35-337be5cd1ea4">76,766</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEwLTMtMS0xLTA_46eb77a4-31ec-40dc-ae38-b7ad21683a84">84,019</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzExLTEtMS0xLTA_bf81017d-bede-470e-9d8a-87981360801d">9,918</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzExLTMtMS0xLTA_c16a6e51-c7a3-4561-a251-617ce1553f75">9,265</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Prepaid expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEyLTEtMS0xLTA_6ccbd56a-16f0-4735-b13a-d4882978ec25">6,869</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEyLTMtMS0xLTA_36900589-cfe0-4c7c-85a5-19a4f3f78687">4,922</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" name="us-gaap:DeferredTaxAssetsDeferredIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEzLTEtMS0xLTA_7d5e69fd-acbd-4bee-b882-04af56aad8f3">807</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEzLTMtMS0xLTA_8ee83a07-fb88-42fe-9cdf-077842ad7633">1,676</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzE0LTEtMS0xLTA_31b0a0b0-ce4c-48d4-9c7b-534bb297b3b3">92,746</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzE0LTMtMS0xLTA_eec1e48f-a468-4ef4-8f9f-984f57097679">99,882</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net deferred income tax liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzE1LTEtMS0xLTA_1ac39cef-7aae-4d19-9262-732b067cc222">40,507</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzE1LTMtMS0xLTA_b5ae89c3-bab0-4054-9faf-777996d6c13c">48,442</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had federal net operating loss carryforwards of approximately $<ix:nonFraction unitRef="usd" contextRef="i735bb4ff00b6467f8f0a9344f904ca28_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLossCarryforwards" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzM4Mw_42fe718b-1a42-44a7-a7d3-ed130dfef710">81.5</ix:nonFraction> million, after-tax state net operating loss carryforwards of approximately $<ix:nonFraction unitRef="usd" contextRef="i834e04f05e664eb98c0b0969a7be7291_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLossCarryforwards" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzQ1Mw_6fd3c9c3-eba5-48ba-b81b-e9313add46d0">3.5</ix:nonFraction> million, and tax credit carryforwards of approximately $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:TaxCreditCarryforwardAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzUwMw_68219392-ea45-468b-abde-436e66d3e01a">8.6</ix:nonFraction> million.  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 2021 if not utilized.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the acquisition of Socrata in 2018, we recorded a $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzEwOTk1MTE2NDEyODU_86b9429d-bdcf-456d-a80a-43136a20f0c4">1.9</ix:nonFraction> million 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 2020.  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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 February&#160;19, 2021, no significant adjustments have been proposed by any taxing jurisdiction.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We paid income taxes, net of refunds received, of $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxesPaidNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI0OTE_af653288-7436-450d-b716-acd781899694">3.3</ix:nonFraction> million in 2020, $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxesPaidNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1MDE_c4522bde-87c5-4676-822e-d006823533d9">21.3</ix:nonFraction> million in 2019, and $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxesPaidNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1MTU_b8f5559f-9853-414c-9f19-bb9f206de1d8">6.8</ix:nonFraction> million in 2018.</span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-22</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_148"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(8)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90ZXh0cmVnaW9uOmVhY2IxMjY0OTQ1MzQ1NGZiYWQ4MzJlMjBlNzIwNDhiXzIwNw_6af387c7-998d-430f-9c4d-117866ba9326" continuedAt="i657a764f7b534d7098a3435ab711fb89" escape="true">SHAREHOLDERS&#8217; EQUITY</ix:nonNumeric></span></div><ix:continuation id="i657a764f7b534d7098a3435ab711fb89"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfStockholdersEquityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90ZXh0cmVnaW9uOmVhY2IxMjY0OTQ1MzQ1NGZiYWQ4MzJlMjBlNzIwNDhiXzIxMQ_a0dd41a4-de89-4769-8261-08e8363154f4" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table details activity in our common stock:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"><tr><td style="width:1.0%"></td><td style="width:34.235%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.095%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.498%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.100%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock option exercises</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtMS0xLTEtMA_9547007c-9115-431b-9937-793c6b269640">1,174</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtMy0xLTEtMA_65067b71-8a97-4ded-8b94-8523a82d5d69">124,363</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtNS0xLTEtMA_e83ef0c8-fd31-4a00-9224-9cbb8b0d690d">999</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtNy0xLTEtMA_5bf62d29-4a30-4a99-89cb-e4f40d043d82">96,908</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtOS0xLTEtMA_0ca6ea16-aac4-4758-a088-9b1862081ae2">1,126</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtMTEtMS0xLTA_f32ef858-6f6b-4e2d-9bbe-2878fd8b9169">74,907</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchases of common stock</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" name="us-gaap:TreasuryStockSharesAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtMS0xLTEtMA_87cd9f14-1ae0-4287-a2e9-5c5a0f879732">59</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtMy0xLTEtMA_ae58d97a-6df6-4bc4-8f08-c4521a03730b">15,484</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="us-gaap:TreasuryStockSharesAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtNS0xLTEtMA_75e089b1-8b56-400e-8364-77040dc984bf">72</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtNy0xLTEtMA_b29ea2b5-559d-4340-88ec-b040ee07fd8e">14,289</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" name="us-gaap:TreasuryStockSharesAcquired" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtOS0xLTEtMA_6f1ef53f-5b96-43df-8bb3-219dd220fbf7">781</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtMTEtMS0xLTA_96b6a96b-b6b6-4274-b51f-585e20e2da23">150,050</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Employee stock plan purchases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtMS0xLTEtMA_bd1cb4a8-95e5-4059-8d5b-e2cb11c3ba18">40</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtMy0xLTEtMA_46e17931-9e96-4771-98b7-3219b8f722f8">10,912</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtNS0xLTEtMA_a6da1327-31bf-475f-9a03-49b98868ba18">53</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtNy0xLTEtMA_94d95152-d75f-492e-886d-3e2b088862ec">9,576</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtOS0xLTEtMA_0332910d-1c69-4d92-aaeb-fe726511cbc7">45</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtMTEtMS0xLTA_9e1f89ac-2956-47b2-8952-ffd74ce56dd6">8,051</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Restricted stock units vested, net of withheld shares upon award settlement</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" name="tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtMS0xLTEtMA_ab0281f7-f5c7-4d11-bbc0-2988d1cc0479">76</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtMy0xLTEtMA_f0b88b51-1f2b-49cd-9968-2788cd47ae79">12,923</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtNS0xLTEtMA_0b8056f1-ab12-4e5f-9187-c2b5a93dc3e3">53</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtNy0xLTEtMA_6c67971f-ae37-48b9-bee4-ca58ae101317"><ix:nonFraction unitRef="usd" contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtNy0xLTEtMA_83e9391c-9187-4b3c-99a3-fc89bffb7079">5,361</ix:nonFraction></ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtOS0xLTEtMA_e3ce2b0e-c3a3-43fa-a3d4-42e390d1e127">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtMTEtMS0xLTA_ea4b6eb1-7f2c-43f4-9f84-9391d0ed3bff">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of February&#160;19, 2021, we had authorization from our board of directors to repurchase up to <ix:nonFraction unitRef="shares" contextRef="i1cfd0b0d8fbd448d89aa47c9ae3b2209_I20210219" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90ZXh0cmVnaW9uOmVhY2IxMjY0OTQ1MzQ1NGZiYWQ4MzJlMjBlNzIwNDhiXzE2Ng_4b957ed3-2e06-4ecf-b948-65eaa56c9f45">2.5</ix:nonFraction> million additional shares of our common stock.</span></div></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_151"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(9)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ4MDQ_aeafcdf1-d914-428c-b428-d18707dd9748" continuedAt="i0b371e7fafea49298720cf5ac03ebcd9" escape="true">SHARE-BASED COMPENSATION</ix:nonNumeric></span></div><ix:continuation id="i0b371e7fafea49298720cf5ac03ebcd9" continuedAt="ic1b00c0838bb458980b61adbfc6b0153"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Compensation Plan</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During fiscal year&#160;2020, 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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzgwMw_9c8021d3-ecd5-465d-842a-27ecc42ff8e3">three</span> to <ix:nonNumeric contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzgwOQ_669d1c4c-02bb-4d6a-aa93-d0283d27d8e2">six years</ix:nonNumeric> of continuous service from the date of grant and have a contractual term of&#160;<ix:nonNumeric contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzg4OA_1c37eedc-4c44-4edd-88bf-c1a8efc0e626">10</ix:nonNumeric> years. 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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzEwOTA_687d0a58-f81d-42cd-a498-8c22c9cbf84c">three</span> to <ix:nonNumeric contextRef="i5583ee35a5ab41ebaa53632a5c580575_D20200101-20201231" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzEwOTY_ee2f8db4-ac02-447b-88d0-aa735fe25301">five years</ix:nonNumeric> of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;<ix:nonFraction unitRef="shares" contextRef="ibf0996191f544a47aa3252f3c6b8abfa_I20201231" decimals="INF" format="ixt-sec:numwordsen" name="tyl:ShareBasedCompensationShareConversionRateShares" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzI3NDg3NzkwNzQzMTE_45f99126-6a3b-4181-b7ec-d593dd4b151e">one</ix:nonFraction>&#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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Compensation</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, there were <ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzE0Nzk_b6597e19-0ee2-4cb5-b11f-b7443251f539">2.5</ix:nonFraction> million shares available for future grants under the plan from the <ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzE1NDE_28a9a6c1-2af9-485b-914a-c7c278cd494b">22.9</ix:nonFraction> million shares previously approved by the shareholders.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Determining Fair Value of Stock Compensation</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 <ix:nonFraction unitRef="number" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzMwNDA_bf248f7b-b394-4306-90da-5b5b1a0f7a56">zero</ix:nonFraction> in the Black-Scholes option valuation model.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-23</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="ic1b00c0838bb458980b61adbfc6b0153" continuedAt="i111f99cf6b7d44b6a7fe1b1ef8cea1c4"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ4MTE_f2697d28-58ae-4e8e-9311-b55d102b4ff6" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following weighted average assumptions were used for options granted:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected life (in years)</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzItMS0xLTEtMA_beccf8a8-56b1-4363-802a-1f9e6e50df3c">5.0</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzItMy0xLTEtMA_d67636ad-3209-4c90-91e6-be575d9f0965">6.0</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzItNS0xLTEtMA_da37cd0d-0ec2-4798-9a7a-5eefe6b49a3d">6.0</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected volatility</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzMtMS0xLTEtMA_6e6f2e97-bbd0-4960-b203-ff35ebe9db8f">27.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzMtMy0xLTEtMA_ce0d3d46-5966-46b0-82c6-dd81ad54b6d3">26.6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzMtNS0xLTEtMA_5e3e3ec9-5421-4e12-b5ca-c001fbac17b9">26.7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Risk-free interest rate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzQtMS0xLTEtMA_86c9ec13-3368-4547-a055-043d8a4cfb17">0.4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzQtMy0xLTEtMA_b858195d-3942-43d9-9faa-bdf6e8ac6f21">1.8</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzQtNS0xLTEtMA_349a0287-bf6e-42c9-a855-39ef8c15c828">2.7</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected forfeiture rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231" decimals="3" format="ixt:zerodash" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzUtMS0xLTEtMA_90815c5e-8b12-4716-aab6-97b1c48d2080">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231" decimals="3" format="ixt:zerodash" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzUtMy0xLTEtMA_f8c414a6-82b7-495a-aa71-cf19e2f5022a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231" decimals="3" format="ixt:zerodash" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzUtNS0xLTEtMA_85ff137a-e5fe-46b4-8ab3-2fff06c73cfc">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Award Activity</span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ4MDY_80a4441d-a0c1-4bfe-a795-a2df5cf0f38b" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes restricted stock unit and performance stock unit activity during fiscal year 2020 (shares in thousands):</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:56.944%"><tr><td style="width:1.0%"></td><td style="width:57.436%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.019%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.412%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.019%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.414%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Number of Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value per Share</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at January 1, 2019</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i3fba9c501ecb48488641149b3f3174c2_I20181231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzEtMi0xLTEtMA_0435d918-da3e-42d6-aa54-cce7609b76b5">334</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i3fba9c501ecb48488641149b3f3174c2_I20181231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzEtNC0xLTEtMA_21879004-620e-4e7f-afba-8f750eacbb6a">221.25</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzItMi0xLTEtMA_2a144fab-70f4-43b1-ae6f-f39f8a58872c">256</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzItNC0xLTEtMA_0646e31a-bda0-4970-bcbd-34b737903ac4">241.19</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzMtMi0xLTEtMA_78c7c26d-7a71-4e7e-b489-f7055f89fb3e">76</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzMtNC0xLTEtMA_5413d667-ee8e-4836-8363-5b8fd069fcdc">221.15</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzQtMi0xLTEtMA_280944e3-d1a3-4647-ba88-4d75bd85aff0">14</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzQtNC0xLTEtMA_01698ef1-a8b1-4d57-b775-c555ef5cb364">229.75</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at December 31, 2019</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i8dfa0f180b1e4b7ebdd34ac1961839d2_I20191231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzUtMi0xLTEtMA_3546b520-c7c4-4215-9b9e-c7f4e9b853d3">500</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i8dfa0f180b1e4b7ebdd34ac1961839d2_I20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzUtNC0xLTEtMA_f59c38f3-3e70-4ada-82f1-27b103bfd2e9">231.57</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzYtMi0xLTEtMA_b6301376-2b78-4f09-97d2-817f425f2abb">204</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzYtNC0xLTEtMA_aedd6131-0b3d-460c-a9bc-43f1652b6625">379.94</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzctMi0xLTEtMA_5e68b9ed-f56d-4098-a3f0-631706b27c76">110</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzctNC0xLTEtMA_2d755588-ea35-4675-9109-1cecdab6bff1">232.59</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzgtMi0xLTEtMA_a208ccfe-c2e8-4017-8bf3-0f53a063724f">7</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzgtNC0xLTEtMA_5dc4a5c1-0196-4fc2-b324-450ef5d64dbc">266.94</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at December 31, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i39a267385f494dce9f4725b6addbb80c_I20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzktMi0xLTEtMA_4254870a-0db8-4b80-9062-3a2aba2d36cc">587</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i39a267385f494dce9f4725b6addbb80c_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzktNC0xLTEtMA_b0405a58-1e3a-4f22-bc57-48895c2f2a79">282.45</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ4MDI_f0cfb4d5-9b57-4100-83f0-01329a68d5ab" continuedAt="i41a36875dfc3406e9f52f204c70336d3" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Options granted, exercised, forfeited and expired are summarized as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:52.307%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.030%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Number of<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual Life<br/>(Years)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Aggregate<br/>Intrinsic Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2017</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEtMS0xLTEtMA_20db2dd1-281f-4c46-ba1c-0fc94c38a40f">4,817</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEtMy0xLTEtMA_14407390-8448-4ead-8da9-075f3d564a1f">107.91</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzItMS0xLTEtMA_62491fa6-11ad-4ba2-beff-691bef6cbc42">432</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzItMy0xLTEtMA_e51dc0e3-cded-4966-89fb-766cb256fca9">208.21</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzMtMS0xLTEtMA_bba0cf9a-465f-4657-832a-5378a9e92409">1,126</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzMtMy0xLTEtMA_d69013f4-128a-423f-9bed-b747e5154b85">66.53</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzQtMS0xLTEtMA_0d5f89bc-80c4-43e9-8ae4-023d71b3ac7b">31</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzQtMy0xLTEtMA_1ed89aea-a725-460c-a931-48e3cc481770">158.80</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2018</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzUtMS0xLTEtMA_4dc88499-d161-45f2-ae1b-b1c466347e8c">4,092</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzUtMy0xLTEtMA_3c210c7f-953c-44ba-8959-c21c7b23e7e9">129.51</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzYtMS0xLTEtMA_cfa7774e-196f-4c35-9c9a-7226b8adf1d2">162</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzYtMy0xLTEtMA_75eead97-13ac-4b4b-ab7e-4df64825b55b">251.58</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzctMS0xLTEtMA_31e3582c-8421-41b1-b530-93313f1686e5">999</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzctMy0xLTEtMA_017ea4f8-484a-4775-8970-2e667c1b9e8f">96.92</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzgtMS0xLTEtMA_170d03fb-4fa7-49a7-ac70-7182fccf4f06">29</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzgtMy0xLTEtMA_44e43c03-8673-47a6-8c7c-789131aeb956">174.54</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2019</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzktMS0xLTEtMA_9977b8f0-20c2-4950-992b-b2e244da0007">3,226</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzktMy0xLTEtMA_ad2475b0-3384-4407-a646-0ca23f112486">145.27</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEwLTEtMS0xLTA_d3614715-0075-47b0-b201-8090c84b28c7">128</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEwLTMtMS0xLTA_e518f986-9ffb-42ec-afc8-71a84de07b90">403.99</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzExLTEtMS0xLTA_81e5e753-a741-490f-8337-e6c615cd8159">1,174</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzExLTMtMS0xLTA_abe6979d-294f-4b82-b146-9aff7154f976">105.97</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEyLTEtMS0xLTA_e09d80f9-ef91-4617-b5b8-9fcdab0b288b">3</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEyLTMtMS0xLTA_0adae2d0-69b1-4c6d-983a-3ff9e88defc2">165.93</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEzLTEtMS0xLTA_1ce2a7ba-7ae7-4dbe-a0ab-e71791d7776a">2,177</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEzLTMtMS0xLTA_388629ca-a572-481c-9451-ea9b0b2ac515">181.63</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEzLTUtMS0xLTA_9e82fcb2-a6d8-4cd1-a105-743674fc3bcc">6</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEzLTctMS0xLTA_7669f36e-45a9-49e4-99dd-1a12dd129ea4">554,709</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercisable at December 31, 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzE0LTEtMS0xLTA_08666df2-0d28-499c-9652-2819b90aeb48">1,424</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzE0LTMtMS0xLTA_530fb33c-b514-4798-8205-0a80223aa67d">155.06</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzE0LTUtMS0xLTA_d524249d-439b-42ca-8f5a-05947e4e6d81">6</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzE0LTctMS0xLTA_43a39f46-4fbb-4f7a-8532-1fbfb057a58e">400,814</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We had unvested options to purchase approximately <ix:nonFraction unitRef="shares" contextRef="i8dd210d68c10475fad0a0a5e93af1528_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzM2MTU_683c63c8-ad23-4e0c-ac7d-de4f54e1ed4f">752,000</ix:nonFraction> shares with a weighted average grant date exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="3" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzM2Nzg_6a1780f8-0c82-4ac2-92cd-d449b4ba660d">231.93</ix:nonFraction> as of December&#160;31, 2020, and unvested options to purchase approximately <ix:nonFraction unitRef="shares" contextRef="i665a8bb2781c470e99cb87839f7e5fbd_I20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzM3MjQ_db044388-0b1a-4e23-8697-a780a563ceee">1.2</ix:nonFraction> million shares with a weighted average grant date exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="3" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzM3ODc_5194d80d-df26-4455-8401-1693b9451e50">188.48</ix:nonFraction> as of December&#160;31, 2019. </span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-24</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="i111f99cf6b7d44b6a7fe1b1ef8cea1c4"><ix:continuation id="i41a36875dfc3406e9f52f204c70336d3"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other information pertaining to option activity was as follows during the twelve months ended December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average grant-date fair value of stock options granted</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzEtMS0xLTEtMA_05172596-795b-4581-b6ec-5a7c9d3b6768">98.69</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzEtMy0xLTEtMA_b45ba9d2-5e97-4ea5-8f51-d14011e92f45">74.54</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzEtNS0xLTEtMA_6bb56796-725f-47fd-ba04-c58c3a046c9f">66.52</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total intrinsic value of stock options exercised</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzItMS0xLTEtMA_d895f7c6-7221-4cb2-b2ea-3c28d036d526">292,394</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzItMy0xLTEtMA_aaee2d26-62ab-4f8f-9760-89775256d8ab">155,899</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzItNS0xLTEtMA_3fa2ff54-7813-448e-8925-c2a71e3112c8">176,716</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Compensation Expense</span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ3OTc_b2cdf4ff-ed6e-4b57-b396-03aba8d0f00c" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of subscriptions, software services and maintenance  </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iad6cf6f58e5a4d6f96b29477f21b456d_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzItMS0xLTEtMA_eac92854-6968-4cfe-a329-64f1d47d5600">18,125</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1712ccf082ef466cb02c343fc02b0b8f_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzItMy0xLTEtMA_8dec8f5f-cd07-467c-ad5b-3aaac51423a7">15,002</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i113b64d7c6ae4eae9c3aee682d8cecbb_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzItNS0xLTEtMA_64ac4e5f-5879-4cc4-8b6b-583368eaeb71">13,588</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if10d25a3227f4f4ab01ec8f05f15151e_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzMtMS0xLTEtMA_f3012c8e-e610-4987-b4d5-9d1d7afce64b">49,240</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ide28a19f9a5d487f854fce9ac2ba02aa_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzMtMy0xLTEtMA_df33559b-1d2b-4602-97d1-f89c2b54dfcb">44,965</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id54b568dfe07484db3ea078954dd5601_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzMtNS0xLTEtMA_4a0c825a-2480-4a98-a711-a187861146be">39,152</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total share-based compensation expenses</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzQtMS0xLTEtMA_7f954618-fdad-4a08-9a90-a1399293cdc0">67,365</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzQtMy0xLTEtMA_3fbc69b0-7173-4d77-900a-0e7c75457fa5">59,967</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzQtNS0xLTEtMA_6a9b4e7c-01de-41e1-8517-b8267f4a9620">52,740</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Excess tax benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzUtMS0xLTEtMA_f56c8cbc-e58e-4f48-b829-447c5ccd479a">60,190</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzUtMy0xLTEtMA_ad1326a8-1a82-4fa9-9c10-c4ce2b59a812">29,819</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzUtNS0xLTEtMA_0da2905d-81d4-466f-b2cd-7bc93e877df8">32,487</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net decrease in net income</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzYtMS0xLTEtMA_145830e5-e929-45ad-9667-4cfad834f220">7,175</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzYtMy0xLTEtMA_56a1041d-672a-4860-8f67-61cdfbbaf4aa">30,148</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzYtNS0xLTEtMA_b29d2c0d-a7c1-42c1-b479-e04f2e6c31ff">20,253</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had $<ix:nonFraction unitRef="usd" contextRef="i8dd210d68c10475fad0a0a5e93af1528_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQxMzA_8a189e6a-22ca-4f5d-b131-dcc82040f85e">164.0</ix:nonFraction> million 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 <ix:nonNumeric contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQzMzk_25931708-e726-4c6e-9b93-db96ff97e09c">3.12</ix:nonNumeric> years.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Employee Stock Purchase Plan</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under our Employee Stock Purchase Plan (&#8220;ESPP&#8221;) participants may contribute up to <ix:nonFraction unitRef="number" contextRef="i0d6a00f13daa4cdeb46d5ab68209cdda_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ0NjA_de7cb119-c631-4d0f-906e-9cb2c52f8f0c">15</ix:nonFraction>% of their annual compensation to purchase common shares of Tyler. The purchase price of the shares is equal to <ix:nonFraction unitRef="number" contextRef="ib51c378298584fa1a4eb53d795b5740a_D20200101-20201231" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ1NzM_64f1bd0e-1669-421d-af8e-4dd3de1d524d">85</ix:nonFraction>% of the closing price of Tyler shares on the last day of each quarterly offering period. As of December&#160;31, 2020, there were <ix:nonFraction unitRef="shares" contextRef="i0d6a00f13daa4cdeb46d5ab68209cdda_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ2ODU_f4db3957-afa3-456f-808e-faafa04a4ffb">664,000</ix:nonFraction> shares available for future issuances under the ESPP from the <ix:nonFraction unitRef="shares" contextRef="i0d6a00f13daa4cdeb46d5ab68209cdda_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ3NDQ_a29552c9-b6bb-4810-a7df-69ac82ab6f29">2.0</ix:nonFraction> million shares previously approved by the stockholders.</span></div></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_154"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(10)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:EarningsPerShareTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzM1OQ_6fb4c7c7-8d95-424e-8ce6-995add100a9b" continuedAt="i0c94c33d61be49d086175d8b24b11148" escape="true">EARNINGS PER SHARE</ix:nonNumeric></span></div><ix:continuation id="i0c94c33d61be49d086175d8b24b11148" continuedAt="ie9ee7285395e4c8aa3d860cb5f88cd93"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzM2NA_1d6b004e-c4f6-43ee-9824-a8baeaf5273a" escape="true"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic earnings and diluted earnings per share data were computed as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:64.129%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.029%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Numerator for basic and diluted earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzMtMS0xLTEtMA_b49eb374-ab8c-4662-93f4-5f98e21d71f4">194,820</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzMtMy0xLTEtMA_32b282d9-a26e-4cea-b144-dbb6eaa5b43e">146,527</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzMtNS0xLTEtMA_18d4b489-c5ab-4b3f-84f9-8254bccac508">147,462</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted-average basic common shares outstanding</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzUtMS0xLTEtMA_b28f6af4-182f-4773-88ea-e810f3f1b62a">40,035</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzUtMy0xLTEtMA_e12f7de4-6100-4b0d-b3ad-863a4cfe0b24">38,640</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzUtNS0xLTEtMA_b437ddc3-0ff6-4078-b774-bf056a3f48d5">38,445</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Assumed conversion of dilutive securities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Share-based awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzctMS0xLTEtMA_d634be0f-20b1-493b-b33e-46177f29c329">1,491</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzctMy0xLTEtMA_6da0c3c5-299d-48f3-bfbf-00c49865fa0c">1,465</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzctNS0xLTEtMA_1b5fd074-4ec1-4120-9d40-dd0778a701b2">1,678</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Denominator for diluted earnings per share</span></div><div style="text-indent:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160; - Adjusted weighted-average shares</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzgtMS0xLTEtMA_ea40e385-6d4b-4896-9300-09d0abbb42e7">41,526</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzgtMy0xLTEtMA_3fa8d389-6255-483d-8e62-6bbba090bbc8">40,105</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzgtNS0xLTEtMA_0b33cdee-6ed2-4cc6-91ce-c1a3b62c78b0">40,123</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Earnings per common share:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Basic</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzEwLTEtMS0xLTA_5fc6449d-d289-46d1-871c-50bcc0083c26">4.87</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzEwLTMtMS0xLTA_239c3fbb-4965-416c-8d3a-7b8275fdcd05">3.79</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzEwLTUtMS0xLTA_4a2e1996-bdbc-4a3b-9874-3d631c85f45f">3.84</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzExLTEtMS0xLTA_ed5ffae8-b414-4c52-93f5-54ef8d99fc58">4.69</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzExLTMtMS0xLTA_09acf92f-a924-4912-b388-500c4b816bd0">3.65</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzExLTUtMS0xLTA_8506b1a0-8e04-450f-a7c4-fed0009b4479">3.68</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ie9ee7285395e4c8aa3d860cb5f88cd93">Share-based awards representing the right to purchase common stock of <ix:nonFraction unitRef="shares" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzE3NA_363ef28a-a5b3-4ab2-a44f-c763b13071a0">132,000</ix:nonFraction> shares in 2020, <ix:nonFraction unitRef="shares" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzE5MQ_7a6a5bb8-edbf-48ac-93c8-96cb6ee41ee8">633,000</ix:nonFraction> shares in 2019, and <ix:nonFraction unitRef="shares" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzIxMg_a177efd4-8bab-414e-aebe-b7a1db1ad30c">888,000</ix:nonFraction> shares in 2018 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="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-25</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_157"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(11)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:LesseeOperatingLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTA_22979903-f9b1-497f-bf01-37813928cded" continuedAt="i1e321354dd6e4171b5f653d40f4eac5b" escape="true"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:OperatingLeasesOfLessorDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNjI_fee73c7c-a80c-4855-9a17-32a53d4d0944" continuedAt="i9b353c6f2a284d6294f46ca9878b156d" escape="true">LEASES</ix:nonNumeric></ix:nonNumeric></span></div><ix:continuation id="i1e321354dd6e4171b5f653d40f4eac5b" continuedAt="ic307292c30744c2c9da85ec9e00516ee"><ix:continuation id="i9b353c6f2a284d6294f46ca9878b156d" continuedAt="ie426c31fcec6458ea24658fae8523e7d"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 <ix:nonNumeric contextRef="id6b415396bb841e79c9345d0e3300d97_I20201231" format="ixt-sec:durwordsen" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwMw_8462a519-10d4-4a9e-9c6f-db3e498de919">one year</ix:nonNumeric> to <ix:nonNumeric contextRef="ia7cf9706ae3c466d8639d30b1f7b428c_I20201231" format="ixt-sec:durwordsen" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwOQ_ea091c83-31ae-4d97-969f-2e7029b6a7d6">seven years</ix:nonNumeric>.&#160;Some of these leases include options to extend for up to <ix:nonNumeric contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" format="ixt-sec:duryear" name="us-gaap:LesseeOperatingLeaseRenewalTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzI3MA_c58d98eb-bc03-4ca8-9acf-380151a2a24d">10</ix:nonNumeric> years. We had&#160;no finance leases and no related party lease agreements as of December&#160;31, 2020. Operating lease costs were approximately $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzM4OA_6b13f5c1-eb8d-4371-bb9e-6b9ab6a1c46b">10.2</ix:nonFraction> million in 2020, $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzM5OA_792da538-c804-4452-b3dc-70bffa1d9944">9.9</ix:nonFraction> million in 2019, and $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzQxMg_1d2ab632-9522-4414-962d-0a5858544a41">7.4</ix:nonFraction> million in 2018. </span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:LeaseCostTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTc_589d3d85-4b38-4a31-ba82-97fa15592efb" continuedAt="ic326445496e745fb9844e559229b9341" escape="true"><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of operating lease expense were as follows (in thousands):</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:83.750%"><tr><td style="width:1.0%"></td><td style="width:19.961%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.629%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:42.017%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.629%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.649%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.463%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.652%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Lease Costs</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Financial Statement Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzItNC0xLTEtMA_b62cffa9-c071-471d-8e1a-a1a446fd4006">6,524</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzItNi0xLTEtODQ_834b699c-9eee-449e-9630-4c08a1b08f75">6,379</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShortTermLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzMtNC0xLTEtMA_41bc5b43-fa99-4bef-853a-790d91adf9b3">1,940</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShortTermLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzMtNi0xLTEtODQ_0bfebc56-59ac-4bc6-93fe-8443842983a4">2,269</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Variable lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:VariableLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzQtNC0xLTEtMA_ca04c76e-696d-4ce3-9baf-3af1a92b0a63">1,760</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:VariableLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzQtNi0xLTEtODQ_27ed1e3d-41f7-480d-bc09-071d3bfd3c96">1,274</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzUtNC0xLTEtMA_2fee5a68-b3f5-48ac-a7c3-8cd046731b68">10,224</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzUtNi0xLTEtNDM3_028d862f-f162-4524-9bee-4b7844ba4461">9,922</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="tyl:ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTE_6d8885f2-6007-4000-8b69-818bea7989cb" escape="true"><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 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="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:75.000%"><tr><td style="width:1.0%"></td><td style="width:58.344%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.725%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.974%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.281%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.976%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzItMi0xLTEtMA_f70c49f0-117a-46ad-89d1-13b62b58f8ad">18,734</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzItNC0xLTEtMTAy_bb27bac8-4821-4b60-b224-9d73f0d2864d">18,992</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases, short-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzQtMi0xLTEtMA_5d1ca95b-b3e4-49a9-a1c3-2c5a1bc57c3f">5,904</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzQtNC0xLTEtMTA2_79b01cad-68bf-451a-8377-13c461311a88">6,387</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases, long-term</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzUtMi0xLTEtMA_17b4111b-3bbf-4b96-99c4-7bc31c9d5977">16,279</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzUtNC0xLTEtMTEx_77edca29-cb2a-4e81-ba28-5bbf9193507a">16,822</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzYtMi0xLTEtMA_eb7de4c3-1cc8-41fe-85af-ade2bbdeff67">22,183</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzYtNC0xLTEtNDM5_eee4c579-4b17-4025-8318-5ca425faba56">23,209</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:continuation id="ic326445496e745fb9844e559229b9341"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTI_97f66c22-6ba2-467c-8e22-0a2ded773f81" escape="true"><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental information related to leases was as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"><tr><td style="width:1.0%"></td><td style="width:60.739%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.651%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.787%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.333%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.790%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other Information</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Cash Flows </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands):</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash paid amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating cash outflows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzQtMi0xLTEtMA_457fc853-a089-4f4c-998e-8688e948c974">8,131</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzQtNC0xLTEtMTM5_9fe38c0d-bab5-430c-aa4a-0dbf81bbd861">7,267</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzctMi0xLTEtMA_cd469bf2-5795-45ce-9828-ea7019f795f0">5,524</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzctNC0xLTEtMTQx_21f79159-1a4d-458b-a1f0-7802051d61ed">3,466</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Lease Term and Discount Rate:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average remaining lease term (years)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzEwLTItMS0xLTA_d93b76ad-788a-4956-aff1-2dbd967d6ede">3</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzEwLTQtMS0xLTE0NA_869b9078-44a1-4e99-9262-78d480b183f5">4</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzExLTItMS0xLTA_1ce548d9-776e-41c5-8761-9a3ee6d59da2">3.28</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzExLTQtMS0xLTE0OA_57e9a709-7170-4ef2-be7d-3dfdec376477">4.00</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div></ix:nonNumeric></ix:continuation></ix:continuation></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-26</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="ic307292c30744c2c9da85ec9e00516ee"><ix:continuation id="ie426c31fcec6458ea24658fae8523e7d"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTM_770c5405-9fbb-4115-a6b4-ce0350216868" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of&#160;December&#160;31, 2020, maturities of lease liabilities were as follows (in thousands):</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:66.111%"><tr><td style="width:1.0%"></td><td style="width:70.328%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.270%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.002%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Year ending December 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzEtMi0xLTEtMA_bad866ed-e5a1-479a-88c3-d3b18bef338a">7,015</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzItMi0xLTEtMA_9840eaf9-aa9d-4fd9-97af-29bacf7bb13a">4,853</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzMtMi0xLTEtMA_8638298f-4f1c-4202-a434-cf94a182e539">3,826</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzQtMi0xLTEtMA_b4ac4f55-0b36-44f9-9c66-92920bf2d564">3,337</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzUtMi0xLTEtMA_ee408aa8-389a-4c06-9865-3754c3e675e9">2,198</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-1" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzYtMi0xLTEtMA_42438d6e-1331-4eea-a4d8-2f9b588e8b70">2,537</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzctMi0xLTEtMA_daa4e6ea-054b-4fba-8df4-4541aaf0afc2">23,766</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Less: Interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzgtMi0xLTEtMA_fe42c36f-b630-4f10-aaba-bf4cedebb357">1,583</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Present value of operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzktMi0xLTEtMA_2e1a065a-4e69-4133-845e-952c230b04d1">22,183</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rental Income from third parties</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 2021 and 2025, some of which have options to extend the lease for up to&#160;<ix:nonNumeric contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" format="ixt-sec:durwordsen" name="us-gaap:LessorOperatingLeaseRenewalTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzE1MzI_f51f2f3c-df93-4467-bf22-c2243ef45353">five years</ix:nonNumeric>. 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="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Rental income from third-party tenants was $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:RentalIncomeNonoperating" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzE3MDE_b544e119-5e14-4b4e-b72f-ef958f23266e">1.1</ix:nonFraction> million in 2020, $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:RentalIncomeNonoperating" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzE3MTE_f3b58ac7-18c3-4f1a-88c6-8d1975f89f61">1.1</ix:nonFraction> million in 2019, and $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:RentalIncomeNonoperating" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzE3MjU_8b0a13d2-07dd-4b96-b3e2-c9a12e9512e6">1.2</ix:nonFraction> million in 2018. Rental income is included in hardware and other revenue on the consolidated statements of comprehensive income. <ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:OperatingLeaseLeaseIncomeTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNjQ_d95edf09-459e-463f-abbb-9a97948d687d" continuedAt="i9e229f87b97a417384db4d778798352a" escape="true">Future minimum operating rental income based on contractual agreements is as follows (in thousands):</ix:nonNumeric></span></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><ix:continuation id="i9e229f87b97a417384db4d778798352a"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:72.083%"><tr><td style="width:1.0%"></td><td style="width:64.410%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.148%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:32.042%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Year ending December 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzEtMi0xLTEtMA_160496f7-8088-4cb2-906f-3aa4d51a69d3">1,372</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedTwoYears" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzItMi0xLTEtMA_8051036d-d82c-46b1-8c08-df9af437b5e5">1,402</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedThreeYears" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzMtMi0xLTEtMA_595ecee2-27f7-4776-9db8-288afec105a3">1,432</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedFourYears" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzQtMi0xLTEtMA_39021e2c-2939-4ae5-8609-663480b98c28">1,462</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedFiveYears" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzUtMi0xLTEtMA_57c74d22-48db-4c46-b306-7ca426aa530a">858</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedThereafter" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzYtMi0xLTEtMA_eecdd55e-1ab2-42fe-a227-1de0b5a2a386">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LessorOperatingLeasePaymentsToBeReceived" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzctMi0xLTEtMA_59bfaa61-e4cd-48fc-ac0c-bdbad42846f4">6,526</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had no additional significant operating or finance leases that had not yet commenced.</span></div></ix:continuation></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_160"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(12)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzQ0Mw_b7a81796-cabd-40d2-95c4-edaa137a79dd" continuedAt="i79645ce0ae7f4b568f165655a00dbb84" escape="true">EMPLOYEE BENEFIT PLANS</ix:nonNumeric></span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i79645ce0ae7f4b568f165655a00dbb84">We provide a defined contribution plan for the majority of our employees meeting minimum service requirements. Eligible employees can contribute up to <ix:nonFraction unitRef="number" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzE4MA_7d56973a-a823-4ffa-a9c6-84186891b5df">30</ix:nonFraction>% of their current compensation to the plan subject to certain statutory limitations.&#160;We contribute up to a maximum of <ix:nonFraction unitRef="number" contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231" decimals="INF" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzMwMA_32a4f420-5fd2-4dc9-af8b-456d313ee9a2">3</ix:nonFraction>% of an employee&#8217;s compensation to the plan.&#160;We made contributions to the plan and charged operating results $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanCostRecognized" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzQxMA_e1b4f05f-3c21-4b85-9b13-d4f10cf1f5ce">12.7</ix:nonFraction> million in 2020, $<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanCostRecognized" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzQyMA_e61dd6ba-73ce-4547-bb3a-38b582a64aa0">11.5</ix:nonFraction> million in 2019, and $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanCostRecognized" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzQzNA_e2a6c510-2c78-4c79-a70a-9267404fe71f">9.3</ix:nonFraction> million in 2018.</ix:continuation></span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_163"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(13)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzIxMw_7e4794f6-1c22-4f58-8fba-6788d720b3f4" continuedAt="i0d257a5858494324995e9c6de65a35eb" escape="true">COMMITMENTS AND CONTINGENCIES</ix:nonNumeric></span></div><ix:continuation id="i0d257a5858494324995e9c6de65a35eb" continuedAt="i94f8c9c60c3e4c73b00ddf66da9079bc"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Security Incident</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September 29, 2020, we filed a Current Report on Form 8-K reporting a security incident (the "Incident") involving ransomware disrupting access to some of our internal IT systems and telephone systems. There is no evidence that the environments where we host client applications were affected, and our hosting services to those clients were not interrupted.  There is also no evidence of malicious activity on client networks associated with the Incident. We contained the Incident and recovered from it, resuming normal operations with our clients. We will continue to deploy supplemental remediation efforts as necessary. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As part of our immediate response to the Incident, we (1) shut down points of access to external systems and began investigating and remediating the problem; (2) engaged outside IT security and forensics experts to conduct a detailed review and help securely restore </span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-27</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="i94f8c9c60c3e4c73b00ddf66da9079bc"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">affected systems; (3) implemented targeted monitoring systems to supplement the systems we already had in place; and (4) notified law enforcement. We have cooperated with their investigation throughout. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We promptly notified our clients of the Incident and provided timely updates to our clients through direct communications and updates to our website. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Although we believe we have contained and recovered from the Incident, and that we have taken and will continue to take appropriate remediation steps, we are subject to risk and uncertainties as a result of the Incident. We believe we are in the final phases of our investigation, but there can be no assurance as to what the ongoing impact of the Incident will be, if any. The Incident caused an interruption in parts of our business. We have made insurance claims for lost revenue related to the Incident, (primarily software services revenue) for the year ended December 31, 2020. Insurance reimbursements pertaining to lost revenue represent a contingent gain and any recovery of these revenues will be recorded when received. We do not expect such gains to be material. We incurred $<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="tyl:UnusualOrInfrequentItemOrBothExpenses" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzIxOTkwMjMyNjA0MzQ_10681622-579a-495c-a622-0814d009b0ec">4.2</ix:nonFraction> million in costs associated with the Incident as of December&#160;31, 2020. As of</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> December 31, 2020, we have recorded </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccruedInsuranceCurrentAndNoncurrent" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzIxOTkwMjMyNjA1Mjk_2f328a3b-255e-4099-93c5-2c161d279bf2">1.1</ix:nonFraction> million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of accrued insurance recoveries and received </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:InsuranceRecoveries" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzIxOTkwMjMyNjA1Nzg_0f49c106-78df-46b4-9be7-2fc28af1ed5d">2.4</ix:nonFraction> million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of insurance recoveries related to the Incident. The recorded costs consisted primarily of payments to third-party service providers and consultants, including legal fees, and enhancements to our cybersecurity measures.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> It is expected that we will continue to incur costs related to our response, remediation, and investigatory efforts relating to the Incident. We maintain cybersecurity insurance coverage in an amount that we believe is adequate.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Litigation</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other than routine litigation incidental to our business, there are <ix:nonFraction unitRef="legalmatters" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" format="ixt-sec:numwordsen" name="tyl:NumberOfLegalProceedingsThatHaveMaterialEffect" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzEwNA_edae4c83-abc0-44b1-a299-2993bb008004">no</ix:nonFraction> material legal proceedings pending to which we are party or to which any of our properties are subject.</span></div></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_166"></div><div style="margin-bottom:9pt;margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(14)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.34pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:SegmentReportingDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM4ODQ_e913a56b-af06-4ebf-b1d2-2b27dedca1c3" continuedAt="i5584122bfb284f80acc92bffb72ab26f" escape="true">SEGMENT AND RELATED INFORMATION</ix:nonNumeric></span></div><ix:continuation id="i5584122bfb284f80acc92bffb72ab26f" continuedAt="i5021293c2fb74d159de4c3c9c79bc51c"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We provide integrated information management solutions and services for the public sector, with a focus on local governments.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We provide our software systems and services and appraisal services through <ix:nonFraction unitRef="business_unit" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="INF" format="ixt-sec:numwordsen" name="tyl:NumberOfBusinessUnits" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzI0MA_49e222a2-6dc1-412b-9c31-9862b029a574">six</ix:nonFraction> business units, which focus on the following products:</span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">financial management, education and planning, regulatory and maintenance software solutions;</span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions;</span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">courts and justice and public safety software solutions; </span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">data and insights solutions;</span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">platform technologies; and</span></div><div style="margin-bottom:9pt;padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">appraisal and tax software solutions and property appraisal services.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In accordance with ASC 280-10, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Segment Reporting</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, we report our results in <ix:nonFraction unitRef="segment" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:NumberOfReportableSegments" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzI3NDg3NzkwNzY2MjI_091030e3-c800-4e92-97d5-bfcc973224a3">two</ix:nonFraction> segments. 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 platform technologies solutions unit meet the criteria for aggregation and are presented in one 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 platform technologies 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, land and vital records management 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></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-28</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="i5021293c2fb74d159de4c3c9c79bc51c" continuedAt="i21e2ca01ef1d4b04b1dc511705d49c11"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. Due to the shelter-in-place orders caused by the COVID-19 pandemic, we cancelled our company-wide user conference for the current year. 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="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;T segments have been adjusted to reflect the segment change.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Segment assets primarily consist of net accounts receivable, prepaid expenses and other current assets and net property and equipment, and capitalized software development costs.&#160;Corporate assets primarily consist of cash and investments, prepaid insurance, intangibles associated with acquisitions, deferred income taxes and net property and equipment mainly related to unallocated information and technology assets.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ES segment capital expenditures included $<ix:nonFraction unitRef="usd" contextRef="ia6c80417eac74c82ae3468f659ce8266_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsForCapitalImprovements" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzEwOTk1MTE2MzIyMzM_9c3f5033-574f-4c5c-9688-03ae11e116b3">6.6</ix:nonFraction> million in 2020 and $<ix:nonFraction unitRef="usd" contextRef="ia255aed390eb4000a104450972e6ed3c_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsForCapitalImprovements" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM2OTA_bda55aaa-3d9a-41b5-b824-b9a9b2d2213b">12.6</ix:nonFraction> million in 2019 for the expansion of existing buildings and purchases of buildings and land.&#160;A&amp;T segment capital expenditures included $<ix:nonFraction unitRef="usd" contextRef="i5c8db9ebd8254d46a3fbfb6e3f34627f_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsForCapitalImprovements" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzIxOTkwMjMyNjAzNTM_2f08a08f-0475-4de3-a1dd-f844e7eb74a6">3.3</ix:nonFraction> million in 2020 and $<ix:nonFraction unitRef="usd" contextRef="i04d0fec5dca84d1c9852fff27dfb4f6f_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsForCapitalImprovements" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM4MTk_a6502b68-e7ad-4f78-9655-0b1d739a9f72">8.2</ix:nonFraction> million in 2019 for the expansion of existing buildings.&#160;</span></div><div style="margin-bottom:14pt;margin-top:14pt"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM4ODY_32d73dc7-8d4e-4a8f-94b3-bc53f75a044f" continuedAt="ida175dba78a7404d9b990bdfb663fc2e" escape="true"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:52.307%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.030%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaca354e3138d46858d4e955c8c20e471_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzItMS0xLTEtMA_c4b312fd-81d1-46a6-896e-e80ef8bf1103">64,200</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id9d1322a873f47e0874e897492712721_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzItMy0xLTEtMA_493c0c14-bc94-4776-a9b7-4fc442e46243">8,964</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6d22aa1df25346ffadaa95acb43364ae_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzItNS0xLTEtMA_69b78cc3-5057-47f6-98e1-4b0a5629bcf1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e91e63dcd724a48a90294c512bdd40c_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzItNy0xLTEtMA_04e42305-b2a4-477f-a87e-f09c808ddb6c">73,164</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia40303a553f9437bb075221df8e35cf7_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzMtMS0xLTEtMA_38f4a3af-5827-44f3-9a25-ab3819802b15">326,284</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i374e0b74c71e440c87e9c6d9bb653e9b_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzMtMy0xLTEtMA_347f2c6b-e410-4d40-bb2d-0502a56df30b">24,364</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i727d890376f54ff8bd2ec913cded5d8b_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzMtNS0xLTEtMA_ebcd817b-83cb-466e-9ba5-91522f5859bc">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8322e4d56da4e2d95685db9396c9692_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzMtNy0xLTEtMA_5f6c16be-d5f6-4941-9416-84976d84b70f">350,648</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5dba41f479d947b1bdcedc66802333e2_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzQtMS0xLTEtMA_3cca6f6b-c80a-49ce-b80f-e36c8261f9f6">164,520</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia5dcc53ef7064bc39ccdcf09f7c79001_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzQtMy0xLTEtMA_b030612e-4cc5-450d-850a-9b4931f684a9">21,889</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0ea582e38b4e4ddc9c2381a870002d2c_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzQtNS0xLTEtMA_eb160a44-1b34-4c5d-af95-467e700e45b7">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9cc233e615334f518f580b82bb14d73a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzQtNy0xLTEtMA_b07a6da3-5411-404e-b718-f50da8fe63ce">186,409</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4c3f6ac328eb45f397df2d21867b655a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzUtMS0xLTEtMA_2768c6c0-fe29-4e43-b7c5-073e0547f077">429,224</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i819fa787e3a94691994562b71e1a4dc0_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzUtMy0xLTEtMA_dd32a293-933b-46e0-a00a-87a70e118cdb">38,289</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8de5a13236e44faf95422dd421c2f236_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzUtNS0xLTEtMA_f702c7ff-e606-4da2-9c8e-219fb7e2b5a3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05e1622f629a4425913b1635df4a04e2_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzUtNy0xLTEtMA_2a70a625-639a-4967-b82b-d2f6ff799ba2">467,513</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f6ebfcf46af4c81b9123d960fbeaa77_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzYtMS0xLTEtMA_2a797a1f-d7c0-4b5f-ae35-cd622053f480">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1392d5cf0be94679bffe21ecce0817c9_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzYtMy0xLTEtMA_377f71d1-661c-4cc6-a108-f45887a7d035">21,127</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i36c9cc8a647c4c7aa42a6200e89ce9fb_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzYtNS0xLTEtMA_882e3fff-4bbb-40ed-8e43-36b6c99480d8">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b3f1e3d428e4132927a753977386694_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzYtNy0xLTEtMA_fec9c5c8-5ef1-4a20-9ded-e5c49d47940c">21,127</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i611ef8f3c31c46738e2b843bf6886bdd_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzctMS0xLTEtMA_f7a1c1ed-0571-466d-99d6-e73929aef7e4">17,670</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if8e240b661ce4e0e883b743c3189fc7c_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzctMy0xLTEtMA_f30375bf-3df7-4607-b1e2-f7deeaac95d8">121</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i72c1e7ba154e47779fc521e3c9800822_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzctNS0xLTEtMA_ae93f60e-508e-4c21-bc3c-868999f88ba3">11</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a28a06f509941fe98fb7e7fc27c5600_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzctNy0xLTEtMA_a01ff3a5-6f94-4d80-ad74-5728131c0543">17,802</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i605bb7a621c94f0a90ad78dcbc8e0b4b_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzgtMS0xLTEtMA_934741c9-e484-4c98-a50a-776c06e61605">19,061</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i993fd2302c8f4b5d9203136c5c02e6e3_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzgtMy0xLTEtMA_575f509c-51fc-4ad2-9c03-460b395e3f1a">70</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i328eb1e00308488e8fe0cae2086cd019_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzgtNS0xLTEtMA_e289d770-a3ab-4e6d-b06d-172d4effd767">19,131</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzktMS0xLTEtMA_54f1c7ee-30f9-466d-a516-5ba678dc8cc1">1,020,959</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzktMy0xLTEtMA_a102e102-0fd2-45e0-a7f5-4848a42d9700">114,824</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzktNS0xLTEtMA_af66898a-fd6e-41a8-9d5d-a65e4644010d">19,120</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzktNy0xLTEtMA_44e95d55-169a-49d3-ac51-c9ea210506d3">1,116,663</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEwLTEtMS0xLTA_959e7e50-8f65-4741-81b1-b309dfd28e81">67,411</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEwLTMtMS0xLTA_fb4a8fe9-4abe-4902-b437-531f91d878a1">1,055</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEwLTUtMS0xLTA_2e21204a-7fc8-4d99-89dc-d92dbb147300">13,191</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEwLTctMS0xLTA_cdb1e7c5-e536-4513-9077-1429e76e2958">81,657</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzExLTEtMS0xLTA_bdfe1f29-2edc-461d-b643-e937253d7c9a">285,271</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzExLTMtMS0xLTA_80e9b768-b4ef-4183-898b-cb3fd3a4ef0e">27,383</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzExLTUtMS0xLTA_af1ff6e4-d29e-4ae2-9d50-1049d0d2203a">86,104</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i20538c481f6b4f248bfa73e7e3b47cfc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzExLTctMS0xLTA_41be9b8c-c1f1-4027-b0ed-0525410108c2">226,550</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEyLTEtMS0xLTA_9516787b-ce33-496e-812b-cac25958a3e5">11,099</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEyLTMtMS0xLTA_13e2dff0-49e7-4e47-96ed-bbe904c738ff">3,823</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEyLTUtMS0xLTA_c3b5ac35-9069-410a-a4b7-7fe74c0a7e8c">6,826</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEyLTctMS0xLTA_7d63c5d1-c99e-4542-a4a6-720450866c29">21,748</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i80940766fb8a4664b36c530c616fcd77_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEzLTEtMS0xLTA_fa6ddf1e-1a5c-4a25-baaf-ad0ce4c98852">847,672</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia427f4d34826408fa62a3e2007be5010_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEzLTMtMS0xLTA_3323c889-24af-4bbb-ba84-5e1e330c461a">94,149</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i282eeaf0e8dd48b3a2ad2ded16faad06_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEzLTUtMS0xLTA_26b4c670-bff0-42ce-88e5-96341bddc72d">1,665,453</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEzLTctMS0xLTA_8b219fa9-6853-4e73-b4a9-976693f6df50">2,607,274</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-29</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="i21e2ca01ef1d4b04b1dc511705d49c11"><ix:continuation id="ida175dba78a7404d9b990bdfb663fc2e"><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:52.307%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.030%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic4a81836cd1c43a2823dd81494bf1b5b_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzItMS0xLTEtMA_5fd634f8-2515-483a-b9ea-b241663e8baa">90,808</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25443b45c9b54bb9a6c7e89b89f04be3_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzItMy0xLTEtMA_87dc5f39-1657-442e-b7f3-449268d99c6f">9,397</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i21c91e321aeb4ad5a04e899cf0ceab93_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzItNS0xLTEtMA_3f998d6c-6431-4e01-a5ed-d366bb676df5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i573d9d38aebc4dfdbedc8aab3002adfc_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzItNy0xLTEtMA_0392c481-bc48-459e-a02f-dc431313a441">100,205</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie0ad6acaca964ed791bb6bf4fab5acbb_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzMtMS0xLTEtMA_96425a8b-2a86-492e-aa34-35cd91dc7604">279,282</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59629cf15db348bb8dd675108c5f4040_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzMtMy0xLTEtMA_be186e94-18c2-46e9-9f45-e7797dab8603">17,070</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief24ed71c8ef43a69aa5c08f4529cb5f_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzMtNS0xLTEtMA_2c40f844-6d0e-4da4-844d-5f245deb0d80">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ida4f226a38484bfba1d39a6cb3f09899_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzMtNy0xLTEtMA_bd6898e7-320e-41c4-b1ad-a6f645dbdf9a">296,352</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if10392ccfe30424aa582db6c6025dc23_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzQtMS0xLTEtMA_f8a03e8a-f89a-4280-b031-4c7a6ac9bd5c">179,865</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7b1f1b966cee4e208524d3bc0d4f3e66_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzQtMy0xLTEtMA_be01851b-3371-421b-8433-ce6acb99e7cb">33,196</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2cfd1e23f0ab42e2ae01539b75218b9d_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzQtNS0xLTEtMA_f0f729dc-54d2-4246-b99d-525e74c29e14">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5c7d1b68baf7406fa7740140cec4e452_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzQtNy0xLTEtMA_fee03ee9-dfde-466c-b6e1-88b8d0ba9b7c">213,061</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f524e60a524033b29ca0bda69c4415_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzUtMS0xLTEtMA_ff3d8093-2051-4a0a-9f0a-971a0a206761">393,521</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib3fc81cd23e74d7f9c4f9f6141480672_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzUtMy0xLTEtMA_7ad6e968-11cf-4757-9596-33a327d43b10">36,797</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7bdcddffd31491f88bd41ea6719ed4f_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzUtNS0xLTEtMA_ebb6385e-619d-44df-80d8-1a3fd6a44533">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8d10cc1da94440e1b8af4178515524bd_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzUtNy0xLTEtMA_ef0ae6ca-6ac4-4f04-97a9-c7675bac79ca">430,318</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i20a02e4e03d94cf5bc97cc747e645e09_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzYtMS0xLTEtMA_75112dc8-5921-465f-94c5-41c0a2dc5fd1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3ab6fdc4955541e7b06e731610bda272_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzYtMy0xLTEtMA_cb2a1742-ef3f-4ed4-9295-3b2bc299d9f0">23,479</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i98dd2e43677045b0a081fa69828920af_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzYtNS0xLTEtMA_8d7da857-0501-4ef8-b4bb-cf106c93b76b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzYtNy0xLTEtMA_d72adadd-a3e2-4c8a-a3a9-34c01c498906">23,479</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i84af85d3584844cdaef25f135b52d82f_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzctMS0xLTEtMA_05536b75-d2ee-4ba1-9a03-a6fdef7e3c56">16,553</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i933b232be67e40f79aa7f187c9126518_D20190101-20191231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzctMy0xLTEtMA_32640949-6efe-4cd9-8b3c-bbb04b933be9">203</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5bb54982aaca4482a7035e7887214a6c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzctNS0xLTEtMA_835af1be-084e-4d41-9dab-2d27ab0caa3c">6,256</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idb422f10382e4413ae24e0220d77db4f_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzctNy0xLTEtMA_3748fc51-4d79-4948-bcd6-421ea1e76d9b">23,012</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if3471d9417bd49cb8b685414796e6c4c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzgtMS0xLTEtMA_f790487e-d534-409d-bc79-409b59fb9b0c">15,290</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i440f307e20524fe0833637af7678f996_D20190101-20191231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzgtMy0xLTEtMA_efc0862b-063d-4b43-a72c-32ac12825b7c">206</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i553e24a2da774e478754fc9c1e57a562_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzgtNS0xLTEtMA_0bd3aee4-b0f5-4e5c-b865-95d038a158b1">15,496</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzktMS0xLTEtMA_e01dfd5f-0995-48ea-8840-d1d51e5c231e">975,319</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzktMy0xLTEtMA_15499a66-ec7a-4e56-8d6e-557f06201c46">120,348</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzktNS0xLTEtMA_9d4fbb3e-d205-44f4-9303-83961d293590">9,240</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzktNy0xLTEtMA_51df2f5d-1da8-4fa9-ae62-2d11b48276cb">1,086,427</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEwLTEtMS0xLTA_14a05faa-7cbe-4932-97a3-524d3de3e0d0">64,245</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEwLTMtMS0xLTA_27d7d09b-92fe-44cb-b267-c44ee9c7c5d8">970</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEwLTUtMS0xLTA_ccd7917a-cb98-46ba-b52b-330715f62d13">11,457</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEwLTctMS0xLTA_fb08c7d6-6301-4767-af84-fce5d7abd73f">76,672</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzExLTEtMS0xLTA_5b6750e6-d832-48ff-b781-7942b699d3b3">255,365</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzExLTMtMS0xLTA_dac2df18-1e6b-4f96-bc8b-dbe7da624d62">26,918</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzExLTUtMS0xLTA_e0c696a5-b79d-4f5c-b0e9-d63e0cc9c47b">73,829</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a0089f73bf408b9943723e46fe355b_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzExLTctMS0xLTA_8a99278e-fef7-4fa2-b757-8f42cfdc26bb">208,454</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEyLTEtMS0xLTA_4c388776-2e31-42c2-9a6d-514ce7dbeaeb">19,283</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEyLTMtMS0xLTA_aec2ccd0-3829-47e5-a7a5-bdd0284f1706">8,436</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEyLTUtMS0xLTA_1243ff75-3ca6-4e57-9f58-dae573ffe429">10,379</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEyLTctMS0xLTA_26839104-44f2-41f6-a463-33a2c852c95d">38,098</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iee9101c9ee6f4be09cb4309ec80b7401_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEzLTEtMS0xLTA_b499029e-c524-44cd-9ce9-5b30b9e17c61">833,203</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i079b5f963ff84613826adf3d7fded19c_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEzLTMtMS0xLTA_d8a4de8d-2f6a-4241-bdff-ef79babd457f">91,343</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib30d32802f7f4c99938c4e05b9fe987a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEzLTUtMS0xLTA_541cbcb9-258d-48c1-86f8-06b22a932f9a">1,267,068</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEzLTctMS0xLTA_14542621-f020-4b5c-8e6a-33f7c5d443c2">2,191,614</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"></td><td style="width:52.307%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.030%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018 </span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4521963cbf1640c6965540d7f6d38ab8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzItMS0xLTEtMA_84c387f7-1abc-4b92-ab7e-cae5bedce74e">81,299</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8ad21c706fe340cb9411db0681562f68_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzItMy0xLTEtMA_72cdc08d-8e3a-440b-8890-b721b2ca0e5b">12,142</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if22553c28ff942cc8e5900fddca936f2_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzItNS0xLTEtMA_6a1e0fa8-ac37-4b4c-b866-062455b4683f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19dbace2df584044aac5e0ab62024623_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzItNy0xLTEtMA_cab3bf93-1752-448d-9f90-1e8b938a2f92">93,441</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1aad5937099e4a2293e0fd91018fa1eb_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzMtMS0xLTEtMA_e0116bc0-7cdb-46f0-b462-a7584f268cf9">205,193</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic2439b0fb7d841e8a8fa30bdc688de94_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzMtMy0xLTEtMA_a6aea34f-4b95-4bcf-b393-91cc6efa4629">15,354</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibf912bc860774b1dba9ba283a2ce334f_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzMtNS0xLTEtMA_a9732779-6123-4366-9162-3449acff49ac">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifde0f926bfce4fd082aedc3599d56854_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzMtNy0xLTEtMA_eeedb614-991a-40a1-b818-f251f1d99af1">220,547</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9135b6e30ab045c5857f81db743a8526_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzQtMS0xLTEtMA_04adb0da-2cd4-4add-bf3e-a01d380668cf">161,612</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia370f1b7a2554327b41cc1bef94b00c8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzQtMy0xLTEtMA_e213f727-631a-411e-b04e-6882364feda4">29,657</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iacca40e7da7e4ac28f39fbf369fa2bda_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzQtNS0xLTEtMA_7160d149-54c7-4edb-a910-cb6154b6cc4e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i321785b37ea747b8879b892dee772d78_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzQtNy0xLTEtMA_5d466593-ab2b-4768-a9b9-bac66c763929">191,269</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibce7b17045654da981ced9bab9f9753b_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzUtMS0xLTEtMA_d2eaa910-91bd-4e4b-8f40-cd706ba6ab21">349,387</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4d63ed4bfe8446288616dca9a8ce3c06_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzUtMy0xLTEtMA_701d9fe5-780c-4be1-a0c4-929ffc29dbfd">35,134</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if53859a5dd8b4597b1777d2394a24258_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzUtNS0xLTEtMA_5df19e06-225a-4700-9388-7583373ceaaf">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie9abd07dabb546c6acab4fa6949b3c4e_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzUtNy0xLTEtMA_82adcd93-97c3-4ea0-821d-7f3ed2432837">384,521</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i40b52fdab1124a808a883826d292e023_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzYtMS0xLTEtMA_5020387f-1a4b-4c36-aed4-ed7f550e9c36">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6a42dc7ef48349dd82fa838275843264_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzYtMy0xLTEtMA_6576952b-63e8-4dd4-ae76-276ee9896a11">21,846</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie996cfde29c94f61817a44c3ceb6f32e_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzYtNS0xLTEtMA_f09a73fb-407b-4f26-ba17-bb4a0ee5a41e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzYtNy0xLTEtMA_b74a0d07-6731-4237-8157-82fec9e11f05">21,846</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i047127629c7049cdb880cf46de83d3df_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzctMS0xLTEtMA_71b3a4fb-d0b1-4d00-b22b-f65802df44d2">18,387</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if2e4d942719b4859b919fc5353befe4a_D20180101-20181231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzctMy0xLTEtMA_e39286a1-4079-4f89-a93f-fcee655e43d6">390</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i93f0ac5a22db4e12a181e967a69eb477_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzctNS0xLTEtMA_a894a2b2-6e91-491a-bffe-e4046cc620fd">4,881</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i33a50375addc42559ace50529545ce43_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzctNy0xLTEtMA_786b7620-ebb3-4b9a-9204-cd127844904f">23,658</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1ecdc4e374054062b0adc1f0b6e189e4_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzgtMS0xLTEtMA_165e124d-f8f7-44d3-b889-0d65f95e6425">12,764</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2f4ab1e3f40742478b1505d557c44257_D20180101-20181231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzgtMy0xLTEtMA_cac8b1ab-4dfa-4d2a-9bdb-5ebbfa2ebb47">391</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id43e6696fe0f47ada64f765007100613_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzgtNS0xLTEtMA_e35e9e7e-9a57-4842-85bb-7a76e94d4f4e">13,155</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzktMS0xLTEtMA_ca046828-fa54-454e-88c9-4878c1cff23c">828,642</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzktMy0xLTEtMA_c4fbe79b-8844-4529-bad1-f29984b4edec">114,914</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzktNS0xLTEtMA_4871066d-c519-4a82-af30-5efcfc748132">8,274</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzktNy0xLTEtMA_c1eebc72-6a99-47f0-87f6-176485091aad">935,282</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEwLTEtMS0xLTA_6eeeb176-6479-42ec-a135-77589ac9222a">49,921</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEwLTMtMS0xLTA_c2de3326-93f5-433b-aea5-db5175079145">1,123</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEwLTUtMS0xLTA_e4aaefcf-4527-46aa-99b8-9958be1cbe69">10,715</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEwLTctMS0xLTA_d51209ec-d073-4aa7-ac78-5ab8d5081f63">61,759</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzExLTEtMS0xLTA_bc0da1dc-2462-4294-82f7-7ea4c870fd02">231,819</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzExLTMtMS0xLTA_2ccf4d79-1303-4197-a333-6077441240c3">28,434</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzExLTUtMS0xLTA_1f5f0469-bc07-4298-96c6-2c83bd15275f">68,572</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i16e3c72329974206b28447d282141bd9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzExLTctMS0xLTA_cfc64ad6-05df-4e9d-b8ec-f28871605ab2">191,681</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEyLTEtMS0xLTA_1bf8d598-2345-4757-ad37-3250deb0f0ae">9,918</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEyLTMtMS0xLTA_fbde645e-9cb4-43f1-abdf-12b0b22bc8e4">1,241</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEyLTUtMS0xLTA_12b59d7c-b582-4c97-a7c9-287d42cd1e3f">13,973</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="tyl:SegmentReportingInformationCapitalExpenditures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEyLTctMS0xLTA_2bd99a2f-4421-44a5-a8ae-8493d9a4105c">25,132</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5ede29565891475e8788cf9eb6ebd6ff_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEzLTEtMS0xLTA_6a26f6ac-6885-4d50-a3bd-77dd089fa7a0">554,960</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieab21d0cb4014d989822c3fcf535de9d_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEzLTMtMS0xLTA_61012691-bcad-43a2-9ff4-0f7508cdacad">64,810</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5607ea47340b4cfcabdbd3a677fb48f8_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEzLTUtMS0xLTA_279fa660-e26e-48c7-a87d-cfd8909fd39c">1,171,193</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEzLTctMS0xLTA_590f2934-452c-4ffb-a382-ed6843275d9d">1,790,963</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM4OTE_de827847-5e5c-4b5a-bd71-9c88dbf3e979" escape="true"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:84.444%"><tr><td style="width:1.0%"></td><td style="width:61.235%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.622%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.577%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.622%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.577%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.622%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.745%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Reconciliation of reportable segment operating</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">income to the Company's consolidated totals:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total segment operating income</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i20538c481f6b4f248bfa73e7e3b47cfc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzItMi0xLTEtMA_2b455109-adfa-4089-ab2f-2cee176e0f1b">226,550</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a0089f73bf408b9943723e46fe355b_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzItNC0xLTEtMA_1a33a5a6-0b5e-4a61-a9eb-8cbea7b7a425">208,454</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i16e3c72329974206b28447d282141bd9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzItNi0xLTEtMA_f999497d-4c76-4c58-a7d1-3ca741c9c4e6">191,681</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of acquired software</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0c0b7e083ecf409aaf3ad6340f8dac46_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzMtMi0xLTEtMA_2b740df5-ef25-482d-950a-ea841f0b37eb">31,962</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib017794e72244d0c9cc15892c74e8e3c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzMtNC0xLTEtMA_0a898046-0bc3-4f95-b948-0c60105bce65">30,642</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7a1e475a5ccc40388fdd253f99b09167_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzMtNi0xLTEtMA_67a7ac12-9f75-45c8-b2e1-456726ff48da">22,972</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of customer and trade name intangibles</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzQtMi0xLTEtMA_afa0f111-7d96-4b3e-9ebb-1e591b85b066">21,662</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzQtNC0xLTEtMA_4feb8718-52a7-4eb8-b49d-988ee1e679e6">21,445</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzQtNi0xLTEtMA_7045247c-cb77-45d6-b27e-848f89e8799a">16,217</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other income, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzUtMi0xLTEtMA_db71b156-4e18-4a18-97ae-f44efdc8bc51">2,116</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzUtNC0xLTEtMA_b5792f6d-40d1-4fc1-927b-56d530d307f5">3,471</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzUtNi0xLTEtMA_e5f260e2-b05c-4a68-ac5a-1894bc8af597">3,378</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzYtMi0xLTEtMA_966dc32a-7671-45d2-9cbb-26ed0bdf932a">175,042</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzYtNC0xLTEtMA_0a9a22b7-dfa7-413d-bc1a-d3b559bc5e64">159,838</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzYtNi0xLTEtMA_1ab1abc1-5248-45c3-a8ea-b06b09206cdb">155,870</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-30</span></div></div></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_169"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:36pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (15)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzEwNDg_03f70324-2473-4d31-8112-7df17c533a1c" continuedAt="ic970cdfd52f24f86951355112f8b9b37" escape="true">DISAGGREGATION OF REVENUE</ix:nonNumeric></span></div><ix:continuation id="ic970cdfd52f24f86951355112f8b9b37" continuedAt="i52429244a27e406389c4dbf1eff04a3c"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timing of Revenue Recognition</span></div><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzEwNTA_99691631-08f5-4591-b3f9-83dfcf22bcb8" continuedAt="i3ea67223bab34095b7090be5c8b414b3" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"></td><td style="width:49.178%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.170%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.309%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.855%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic06b075c984748b299e6f90b6ed4dbd9_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzItMi0xLTEtMA_1a878534-b901-45e6-8ac4-d7e11172885e">62,029</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idca986a4ea24433283e7eb2ec4c9ef60_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzItNC0xLTEtMA_ba74c777-9b35-49c0-85ca-2cc6f5fa911d">11,135</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e91e63dcd724a48a90294c512bdd40c_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzItNi0xLTEtMA_f31d029d-b6f1-43d1-a5df-2d846c00dd28">73,164</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5758dbecdf24fbc9276380fc8db350f_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzMtMi0xLTEtMA_4c87f06f-8772-4253-9e43-6c32afc01460">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i88db4d58db264cdf9a040edd12ab4b64_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzMtNC0xLTEtMA_8f6a8c8a-fcfe-44b9-ac9b-7834246b6a33">350,648</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8322e4d56da4e2d95685db9396c9692_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzMtNi0xLTEtMA_77b9520b-11df-4bb0-a463-d0e3b62e4310">350,648</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie404d1023b2e4f27a09d0d6e417c9d09_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzQtMi0xLTEtMA_537e7319-3a7a-4a92-a2aa-a204098cff66">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3521c17bed745d6b7b97aed9032c297_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzQtNC0xLTEtMA_6789358f-cfb3-40b7-b073-46e9ce1b04c2">186,409</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9cc233e615334f518f580b82bb14d73a_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzQtNi0xLTEtMA_f0255009-b665-418a-9211-0a19d6a3b550">186,409</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic74c202358194dc2ad96dca31adeb5c4_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzUtMi0xLTEtMA_29e36882-90a6-4935-bbfd-8426840342a6">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i41624fbe290d47e88764ba29a3f2c7df_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzUtNC0xLTEtMA_e6fe57c5-86a4-4724-984e-258a8280f857">467,513</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05e1622f629a4425913b1635df4a04e2_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzUtNi0xLTEtMA_43e394f0-2205-4b45-9f86-d5ac45e6a61e">467,513</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5236921ceff4428a8a1293a8c13b4796_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzYtMi0xLTEtMA_14986a28-ab73-43e4-b75c-29f3d7eecd7a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iafad67b68d36415389e35d95f7d7097c_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzYtNC0xLTEtMA_4466feb3-952a-4ea7-adf7-78a64e298635">21,127</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b3f1e3d428e4132927a753977386694_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzYtNi0xLTEtMA_19f55f36-8fcb-451c-aed6-feec1a3c862e">21,127</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d827cd29e214fba854ce173f1f9f8b9_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzctMi0xLTEtMA_41bfe429-7ff0-475b-936d-d846f9e1b3af">17,802</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia3493665acbb4df4a46e3121f8b28e41_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzctNC0xLTEtMA_af894c5f-195f-457e-b6fa-4e731d064f41">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5ca42f97119049588f2dc1ea31ed561e_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzctNi0xLTEtMA_b8574790-b0dd-446f-bccf-f133219971eb">17,802</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia35003eb05c94ac99fa96195ea44c2b2_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzgtMi0xLTEtMA_ab1c2671-348d-492d-ab2e-ebfb458ab5f4">79,831</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie323bc953efe4028a95d59dd71e1047e_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzgtNC0xLTEtMA_c1dc9670-586c-4da7-9921-67ab675fc0a4">1,036,832</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzgtNi0xLTEtMA_4063c5eb-2412-4325-bcf3-d3cf8335ea41">1,116,663</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"></td><td style="width:49.178%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.170%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.309%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.855%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic4b118fb59224e7682304966b379745f_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzItMi0xLTEtMA_af42e906-cd42-4208-b12c-7b5d8f6c6bb4">84,900</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieb1ea067db4642b9ad657f1c16d2e87b_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzItNC0xLTEtMA_f0dcbc7e-8f62-4397-9d20-aef3be3b04eb">15,305</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i573d9d38aebc4dfdbedc8aab3002adfc_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzItNi0xLTEtMA_8c24e4fe-132f-4078-a73c-5924014ea1f6">100,205</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia9f14bbeed814f11a0ab79e9cb41189b_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzMtMi0xLTEtMA_560f3a15-149d-41c6-b882-1617b6341447">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i60f8e2975f9e41d6ba7f13be6fbf6e99_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzMtNC0xLTEtMA_cad857bf-83e7-4a87-8a07-5e5ea86046a4">296,352</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ida4f226a38484bfba1d39a6cb3f09899_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzMtNi0xLTEtMA_f9443fed-7451-4be3-9f5e-04313519d39e">296,352</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie98bb68a93b44965825cb2c8ceae7a4e_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzQtMi0xLTEtMA_1c442127-a937-448c-a559-e1b9a2eeb043">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0863c02b7bf64f529669ba0296368dae_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzQtNC0xLTEtMA_de9c0c5b-9082-4b15-872d-1ffcb62ac9a6">213,061</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5c7d1b68baf7406fa7740140cec4e452_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzQtNi0xLTEtMA_47f4ca54-21ce-431a-bf76-c6cbc9ce02c3">213,061</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1af2984530ee4c29963176b6e39badef_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzUtMi0xLTEtMA_c6e189b0-daba-43f6-8f98-ac61c152b67d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaef736eff1db45f2a0a38f5d6b15c789_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzUtNC0xLTEtMA_ca098eb1-0c96-45d0-8ff3-3ca2dedfcc34">430,318</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8d10cc1da94440e1b8af4178515524bd_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzUtNi0xLTEtMA_adb4793e-7c45-41db-a0f2-48180e5e8ec8">430,318</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3dd06f2547e94523b6b5d770f4d02001_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzYtMi0xLTEtMA_413961d1-3e57-4d1d-afde-1b033843bca0">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibb72291e8b444df0a6809d0558f0d53e_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzYtNC0xLTEtMA_2d65fe91-92fb-4997-9d22-2da430e3d23b">23,479</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzYtNi0xLTEtMA_abaff90f-8101-4ff5-a8a6-48fab6b5e5f1">23,479</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228b5ae61374a6a8baff28271dca14c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzctMi0xLTEtMA_c063a986-6d67-4b6c-921a-c3ed192cb0f8">23,012</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ice166ef1838d494993ecc175966d9f07_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzctNC0xLTEtMA_b12b03d0-ab65-4342-9ec4-e7b49b1e239e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iba59f1fc8ecc47629796b9e30800609c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzctNi0xLTEtMA_11e12b8d-4c50-48cb-bb06-6afb4b37a4b3">23,012</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i456e0b46eec44e44823802fb48496bd1_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzgtMi0xLTEtMA_8ac2f582-719b-45f6-96cc-2358b3ad79ab">107,912</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a3ebc400648468d93df88fcabcd5437_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzgtNC0xLTEtMA_30d102f3-33ec-4741-ad41-16967626bfda">978,515</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzgtNi0xLTEtMA_f74d1877-e856-44f6-bffe-4bbe8154c007">1,086,427</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.083%"><tr><td style="width:1.0%"></td><td style="width:50.545%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.515%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.638%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.515%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.638%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.515%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.634%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e79d8a6f8c4624b612ce8ea9a3bba8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzItMi0xLTEtMA_fd15c9bf-48e4-4c55-af97-da8843773696">75,188</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8b5e1165a3a64022a70310fa0bd0e834_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzItNC0xLTEtMA_6be24a18-6a15-4e20-a5d6-11a3d1635502">18,253</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19dbace2df584044aac5e0ab62024623_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzItNi0xLTEtMA_9b5fe8b4-8001-445d-99bf-e4ac95950e2a">93,441</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie296594afadc4d10bbe2a60369ba6444_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzMtMi0xLTEtMA_39a1d665-5b2f-41be-b32c-cb328546643e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i30539d66e910450a9aa6513ab82f4549_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzMtNC0xLTEtMA_e9e1b0ca-0ad2-4e5a-a4cb-0b4a99862384">220,547</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifde0f926bfce4fd082aedc3599d56854_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzMtNi0xLTEtMA_13eb0732-80ff-4191-9c1a-24cfea592eae">220,547</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5f3e6895f0034ba18a0c1f0a4381ea4d_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzQtMi0xLTEtMA_9b960a57-e432-448e-967b-4b3090dcf48e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iefdea658b3624f6c99b1cbbf902bc3bf_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzQtNC0xLTEtMA_e6ceea93-31cf-4f9d-9b2c-6f7a17f3e4af">191,269</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i321785b37ea747b8879b892dee772d78_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzQtNi0xLTEtMA_62c9ddec-7954-4167-93c9-b0435e1231be">191,269</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia72ad4cced7f45c0be875b7f701ff253_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzUtMi0xLTEtMA_b07c7d95-c001-4392-8c87-381998872fe8">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if4aa41eda5044f509fa31fac7af47ac9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzUtNC0xLTEtMA_a6d7b59d-4003-4186-bc8e-2c1939492a53">384,521</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie9abd07dabb546c6acab4fa6949b3c4e_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzUtNi0xLTEtMA_b130f7f7-8e67-4f00-a369-00930a609124">384,521</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2330b90e43d64bbd9d882f331f7eac16_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzYtMi0xLTEtMA_44702ddd-ce76-41f1-92f9-446a27972ef5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id1dca31a3fdb466d86ab7d4afe7c1fef_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzYtNC0xLTEtMA_45f9b44d-a1c9-4569-8110-1c3650ab1223">21,846</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzYtNi0xLTEtMA_0072cdf0-ed5d-4d4c-bf6b-c849e155eb4b">21,846</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5f9b125c3b6e4455b029d41f0a604cb9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzctMi0xLTEtMA_59843939-feef-4765-b604-a0cfc5393613">23,658</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e6434c6997f4dfab4a6d963bc641791_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzctNC0xLTEtMA_acf7db43-0911-4580-8ced-8be8a8d1daea">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id4fc66e631144d6ead9c2a03a1ec2293_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzctNi0xLTEtMA_53932eba-fa7f-484e-b065-186615430be1">23,658</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec0771ed002247d3b872c9828fc3893c_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzgtMi0xLTEtMA_7a8c1737-acab-4658-8768-6489f80c0f76">98,846</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i90565bf53615482ab84be82e68a17187_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzgtNC0xLTEtMA_033eb530-8059-4616-94a7-2990badfea81">836,436</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzgtNi0xLTEtMA_7fee43f2-2a7c-4cb3-94ac-4ba5f11af9e1">935,282</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-31</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="i52429244a27e406389c4dbf1eff04a3c" continuedAt="i5b68d830ea0a490b82fbd04393dd5fa7"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recurring Revenue </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwMQ_f227370c-2237-429d-ad5d-84836ff26078">one</span> to <ix:nonNumeric contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231" format="ixt-sec:duryear" name="tyl:RevenueFromContractWithCustomerContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwNw_f4f9bf6e-6666-4f37-85b7-9e967ab83b7b">10</ix:nonNumeric> years but are typically contracted for initial periods of <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg2OA_bbe6fc68-13b7-4abb-8c69-8e3ba541aaec">three</span> to <ix:nonNumeric contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg3NA_139f0e16-cced-4c8f-bec4-73a91eedd16b">five years</ix:nonNumeric>. Non-recurring revenues are derived from all other revenue categories.</span></div><ix:continuation id="i3ea67223bab34095b7090be5c8b414b3"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="margin-bottom:5pt;margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"></td><td style="width:55.863%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.927%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.016%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.952%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.958%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i43a3b3114e4f4b41aa6686085148818c_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzEtMi0xLTEtMA_24972e7f-d37b-43f5-97f3-fa660c94a6da">755,508</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i30c7482c204e4d92aa7225c9443ac902_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzEtNC0xLTEtMA_c7f0071e-6497-4550-b6cb-941773989cc1">62,652</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i13b169af0153481dbfc250ff522efd7d_D20200101-20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzEtNi0xLTEtMA_c2211f7a-6062-478e-883f-c4c075eb7ec9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d690ef4857442a99408eaa38571ba81_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzEtOC0xLTEtMA_2bad09ef-e784-408c-912b-f258c0b2510e">818,160</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia1d04c0f1f004087a9320e951fe51100_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzItMi0xLTEtMA_ef322099-606b-491c-893d-33a64a990521">246,390</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icae667a9c53d4d95895be049af6e1365_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzItNC0xLTEtMA_6d97bdd1-a096-49fd-bf43-803d8a1bebab">52,102</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i11f3a0ebc0e442a09083af76d68073e4_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzItNi0xLTEtMA_75412027-8a02-4c69-a42b-71cbf32dee85">11</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i90394ba33e644132abcc99dfc7c4f81d_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzItOC0xLTEtMA_b181e725-6eae-48db-9034-9144542a8727">298,503</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i605bb7a621c94f0a90ad78dcbc8e0b4b_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzMtMi0xLTEtMA_5b38b67e-97ef-46e4-ba72-305c0fcd729c">19,061</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i993fd2302c8f4b5d9203136c5c02e6e3_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzMtNC0xLTEtMA_5490c994-d08e-45dd-a410-79bc199909e7">70</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i328eb1e00308488e8fe0cae2086cd019_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzMtNi0xLTEtMA_4e3a54c4-a3ad-42b1-aa91-71637bcfa92a">19,131</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzQtMi0xLTEtMA_96364a6c-2082-4eb3-8278-8ed47414bf54">1,020,959</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzQtNC0xLTEtMA_0804a135-89e4-409d-974f-6beeaf49075b">114,824</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3445a31732f24a65a862d5e005ac762c_D20200101-20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzQtNi0xLTEtMA_337f69bd-2824-4a17-bbdd-371f259851b0">19,120</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzQtOC0xLTEtMA_f81a1b40-2866-4c08-8b80-94d98263d6c1">1,116,663</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"></td><td style="width:55.863%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.927%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.016%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.952%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.958%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8bcb3a63e1184a6da13d229983e0bf8d_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzEtMi0xLTEtMA_a7c5f827-4c9f-49c2-9ff1-ff85bb8a3081">672,804</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i83427b8854304fb8b10c8587f43e5f87_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzEtNC0xLTEtMA_06395998-5fcc-42b5-a21e-684433c07bdd">53,866</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a03ecad18d44092b7400425a66cf83a_D20190101-20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzEtNi0xLTEtMA_c4950495-5f6a-4d27-b35a-e9a6091158e3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i79b9f8b7c0a143ab89753d72adbc8578_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzEtOC0xLTEtMA_b77596a9-c274-4ebe-ae96-d1fb8bc6f305">726,670</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61a20a8a61cd4df5b764c46f5f2d8976_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzItMi0xLTEtMA_6def9147-1412-49b1-96d2-55c12f3d2ac2">287,225</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i684267dd3f8b4ecd95e4c99ced1c2423_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzItNC0xLTEtMA_5375b15a-a2b3-41f4-8acb-1f7da82a9586">66,276</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iccb7c20612864e26baedec0f83c8ccdf_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzItNi0xLTEtMA_f5d22019-ce1b-4440-9589-84ca67158188">6,256</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i618865cb24b84f6d923d028a187de73f_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzItOC0xLTEtMA_2eaa5239-9a21-4f36-b054-388528b3d52f">359,757</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if3471d9417bd49cb8b685414796e6c4c_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzMtMi0xLTEtMA_113c81a8-1762-4cca-b1dc-230cb57d7d2e">15,290</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i440f307e20524fe0833637af7678f996_D20190101-20191231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzMtNC0xLTEtMA_bd61b71d-83cb-4da4-83ad-c6ffe1c58008">206</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i553e24a2da774e478754fc9c1e57a562_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzMtNi0xLTEtMA_7c0b6030-60c1-4a51-93a9-7f630aefbc66">15,496</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzQtMi0xLTEtMA_03d76e19-2540-4f7c-ab49-11611137906c">975,319</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzQtNC0xLTEtMA_0ae9ce03-19a8-479f-b48f-49d52e7a0bd6">120,348</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5e4ab2b44b484480be10536043777e7a_D20190101-20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzQtNi0xLTEtMA_419e587e-9030-49ee-aa6e-b13a4fa6e8c3">9,240</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzQtOC0xLTEtMA_c52106af-c234-4dc1-91b2-81fe0b94894d">1,086,427</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"></td><td style="width:55.863%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.370%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.574%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.395%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.514%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9e72e38f5be3453282ce5f907d536e8a_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzEtMi0xLTEtMA_f8513cc3-fc12-4d46-a5be-b9bb765100e6">554,581</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7818d46a5d8b47ecb2ef6aa3aa4d219d_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzEtNC0xLTEtMA_fa85b089-bfb6-4276-b32f-2f7a6bb5969c">50,488</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia5ac0b98eb3b437e9e746b2f7cc5e97c_D20180101-20181231" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzEtNi0xLTEtMA_3f54016a-f4f4-44b6-9726-a82f62f32999">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2f5c8afdaded4119a0134645328601b8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzEtOC0xLTEtMA_245895a5-d945-4344-8e73-3cef95a388a8">605,069</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id3a1c250124843d180e37631a9a158a8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzItMi0xLTEtMA_4ca9a184-7091-43fc-ad4b-ae44d48e6517">261,297</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i740eecf03fd54d479432ffae3de0a8d1_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzItNC0xLTEtMA_515146ac-0cc0-4200-87a9-1d1f84a07444">64,035</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3a78d159ac204462baa0ac6a418f3e74_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzItNi0xLTEtMA_d9762ea3-8669-499c-a26b-bb8cfc92f5aa">4,881</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19d8a060accd40f68cdc69b39f176a15_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzItOC0xLTEtMA_7890931f-f796-4813-8565-e846c02b8d92">330,213</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1ecdc4e374054062b0adc1f0b6e189e4_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzMtMi0xLTEtMA_08a78660-05e9-4cec-9370-302748e3c218">12,764</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2f4ab1e3f40742478b1505d557c44257_D20180101-20181231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzMtNC0xLTEtMA_e7cf2c6d-9365-4609-99a7-ac6717eb0600">391</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id43e6696fe0f47ada64f765007100613_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzMtNi0xLTEtMA_4d7edeaa-2827-4793-9623-b9827894115d">13,155</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzQtMi0xLTEtMA_98a7fa44-5f58-41c8-99e7-47bc5a697b4d">828,642</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzQtNC0xLTEtMA_8b5be864-49ca-42f2-959e-f9d5c65ca604">114,914</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7b05d508d00749e2b8162049ad8b5b92_D20180101-20181231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzQtNi0xLTEtMA_eeea8ecd-cc92-495c-9040-ddb37d9a422b">8,274</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzQtOC0xLTEtMA_ccda6e1a-11cd-433d-a033-878b88ff0f43">935,282</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_172"></div><div style="margin-bottom:9pt;margin-top:18pt;padding-left:36pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(16)&#160;&#160;&#160;&#160;<ix:continuation id="i5b68d830ea0a490b82fbd04393dd5fa7" continuedAt="i1881864c668f4a38b9e9cc97eaed1456">DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</ix:continuation></span></div><ix:continuation id="i1881864c668f4a38b9e9cc97eaed1456" continuedAt="ibf4baa96c97e47978cba4f642d6c88d1"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90ZXh0cmVnaW9uOmY4ZjRjYzUxOWJlMzRkOGM4OGFkNWYxOTI1NmY0MzA4XzY5NA_04dc708b-bdf2-4182-9401-207e3038cbd8" escape="true"><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.138%"><tr><td style="width:1.0%"></td><td style="width:50.979%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.790%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.790%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.871%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise Software</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i80940766fb8a4664b36c530c616fcd77_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzEtMi0xLTEtMA_e0ab74bf-a570-426a-8f89-168bf332c1ad">422,742</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iee9101c9ee6f4be09cb4309ec80b7401_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzEtNC0xLTEtMA_aef1b9f9-e92e-4cb9-9ae0-bc9358a7e7f4">375,838</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia427f4d34826408fa62a3e2007be5010_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzItMi0xLTEtMA_d2ed4641-5b42-42ef-872f-8978390f2e2a">36,945</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i079b5f963ff84613826adf3d7fded19c_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzItNC0xLTEtMA_010fd08b-0db0-443d-9711-14624cdedd4f">35,487</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i282eeaf0e8dd48b3a2ad2ded16faad06_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzMtMi0xLTEtMA_3df1d7fc-a138-48f1-8ac5-b1be809adadb">1,691</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib30d32802f7f4c99938c4e05b9fe987a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzMtNC0xLTEtMA_6962a996-bb13-41c5-8de3-89be69bc8336">1,369</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzQtMi0xLTEtMA_70139fa5-02f6-4549-8e1b-4b9b2e1ee0e7">461,378</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzQtNC0xLTEtMA_95d00a88-deee-4611-9bac-0d32a176c5b4">412,694</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.000%"><tr><td style="width:1.0%"></td><td style="width:74.892%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.792%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.916%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTphZTdjOTU4ZjNjMWY0OTk5OWNjODA2NDdiZDg1ZTYxZC90YWJsZXJhbmdlOmFlN2M5NThmM2MxZjQ5OTk5Y2M4MDY0N2JkODVlNjFkXzEtMi0xLTEtMA_92a269d5-5ac4-4a24-8f59-d9e074e30754">412,694</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferral of revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:ContractWithCustomerLiabilityIncreaseFromDeferral" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTphZTdjOTU4ZjNjMWY0OTk5OWNjODA2NDdiZDg1ZTYxZC90YWJsZXJhbmdlOmFlN2M5NThmM2MxZjQ5OTk5Y2M4MDY0N2JkODVlNjFkXzItMi0xLTEtMA_c00ac7e3-d58d-4ec0-83d2-3097a7fc9993">1,094,185</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recognition of deferred revenue</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="tyl:ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTphZTdjOTU4ZjNjMWY0OTk5OWNjODA2NDdiZDg1ZTYxZC90YWJsZXJhbmdlOmFlN2M5NThmM2MxZjQ5OTk5Y2M4MDY0N2JkODVlNjFkXzMtMi0xLTEtMA_0f9801f1-f8ed-4610-b3d8-150a1ed65801">1,045,501</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTphZTdjOTU4ZjNjMWY0OTk5OWNjODA2NDdiZDg1ZTYxZC90YWJsZXJhbmdlOmFlN2M5NThmM2MxZjQ5OTk5Y2M4MDY0N2JkODVlNjFkXzktMi0xLTEtMA_e52f0794-af35-4b89-ab81-8ce71edf0cf7">461,378</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Transaction Price Allocated to the Remaining Performance Obligations</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020 was $<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-7" format="ixt:numdotdecimal" name="us-gaap:RevenueRemainingPerformanceObligation" scale="9" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90ZXh0cmVnaW9uOmY4ZjRjYzUxOWJlMzRkOGM4OGFkNWYxOTI1NmY0MzA4XzU3Mw_643ef171-31db-4a57-8ea4-7d1a7adaab50">1.59</ix:nonFraction> billion, of which we expect to recognize approximately <ix:nonFraction unitRef="number" contextRef="i120a3f6aa2394e6b92280fdbf67605aa_I20201231" decimals="2" name="us-gaap:RevenueRemainingPerformanceObligationPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90ZXh0cmVnaW9uOmY4ZjRjYzUxOWJlMzRkOGM4OGFkNWYxOTI1NmY0MzA4XzYyMw_ae675cea-bad9-4c94-acce-900d1f83b658">49</ix:nonFraction>% as revenue over the next <ix:nonNumeric contextRef="i120a3f6aa2394e6b92280fdbf67605aa_I20201231" format="ixt-sec:durmonth" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90ZXh0cmVnaW9uOmY4ZjRjYzUxOWJlMzRkOGM4OGFkNWYxOTI1NmY0MzA4XzY1MQ_a58664b8-4777-4ef8-a7c0-a627d2e65bcc">12</ix:nonNumeric> months and the remainder thereafter.</span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-32</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-bottom:9pt;margin-top:9pt"><span><br/></span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_175"></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(17)&#160;&#160;&#160;&#160;<ix:continuation id="ibf4baa96c97e47978cba4f642d6c88d1" continuedAt="i858a8d0843414f7095e7e370943d0978">DEFERRED COMMISSIONS</ix:continuation></span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i858a8d0843414f7095e7e370943d0978">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 generally <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM0OA_aaa61222-6e5a-41d4-8f6e-bd9f0f649267">three</span> to <ix:nonNumeric contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231" format="ixt-sec:durwordsen" name="tyl:SalesCommissionsAmortizationPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM1NA_d82c1daa-3619-4d60-9a08-79d1e950a62c">seven years</ix:nonNumeric>. Deferred commissions were&#160;$<ix:nonFraction unitRef="usd" contextRef="id293bf05103a494192d983b0a8bacaab_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CapitalizedContractCostNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM4NA_ee81cca2-f1ab-4380-b9eb-cb98ba8cccda">32.3</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CapitalizedContractCostNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM4OA_e9c17c00-3031-4673-9829-702c79cd06e7">29.8</ix:nonFraction> million, as of December&#160;31, 2020, and 2019 respectively. Amortization expense was&#160;$<ix:nonFraction unitRef="usd" contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CapitalizedContractCostAmortization" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzQ2NQ_75ba904a-2563-43db-959e-5d28ca652751">11.9</ix:nonFraction> million,&#160;$<ix:nonFraction unitRef="usd" contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CapitalizedContractCostAmortization" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzQ2OA_4dcedc78-9cb1-43e3-986e-0795708fe5ed">11.5</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CapitalizedContractCostAmortization" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzQ3Mg_6eaef0c2-fc25-4b7b-afd8-7d1074dadce8">9.6</ix:nonFraction> million for the&#160;twelve months ended December&#160;31, 2020, 2019, and 2018, 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.</ix:continuation></span></div><div id="i8b7048d9282b49808c9b0dc46622e6f3_178"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(18)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:SubsequentEventsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzExMA_12eaf924-d7bd-444c-a0ef-14b430e327be" continuedAt="ie743a9e694934a6e8d751b8dc1a42efe" escape="true">SUBSEQUENT EVENTS</ix:nonNumeric></span></div><ix:continuation id="ie743a9e694934a6e8d751b8dc1a42efe" continuedAt="ib95a2862fe274873b8e2a10c56591b3b"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following events or transactions have occurred subsequent to December&#160;31, 2020.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">NIC, Inc.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 9, 2021, Tyler Technologies, Inc. (the &#8220;Company&#8221;) entered into an Agreement and Plan of Merger (the &#8220;Merger Agreement&#8221;) by and among the Company, Topos Acquisition, Inc., a Delaware corporation and wholly owned subsidiary of the Company (&#8220;Merger Sub&#8221;), and NIC Inc., a Delaware corporation (&#8220;NIC&#8221;). Pursuant to the Merger Agreement, and upon the terms and subject to the conditions therein, Merger Sub will merge with and into NIC (the &#8220;Merger&#8221;), with NIC surviving the Merger and continuing as a wholly owned subsidiary of the Company</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:120%">.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subject to the terms and conditions of the Merger Agreement, at the effective time of the Merger (the &#8220;Effective Time&#8221;), each issued and outstanding share of Common Stock prior to the Effective Time, par value $<ix:nonFraction unitRef="usdPerShare" contextRef="i7a521d97296e4b768a29218491f56763_I20210209" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzQ5NDc4MDIzNDUwNjA_ccae0681-e35d-41a8-8cba-b91e3317620a">0.0001</ix:nonFraction> per share, of NIC (the &#8220;NIC Common Stock&#8221;) other than (i) shares of NIC Common Stock owned directly or indirectly by the Company, NIC or any of their respective subsidiaries immediately prior to the Effective Time, including shares of NIC held as treasury stock, (ii) shares of NIC Common Stock as to which dissenters&#8217; rights have been properly perfected, and (iii) shares of NIC Common Stock covered by unvested NIC restricted stock awards) will be converted in the Merger into the right to receive $<ix:nonFraction unitRef="usdPerShare" contextRef="i9d9aaefdf6614ee7a787f15a867e2ff1_I20210209" decimals="INF" name="tyl:BusinessAcquisitionOptionConversionPrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzQ5NDc4MDIzNDUwNTI_126b79a7-b8af-4c37-914c-97562267d67c">34.00</ix:nonFraction> in cash, without interest (the &#8220;Merger Consideration&#8221;).</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the terms of the Merger Agreement, the completion of the Merger is subject to certain customary closing conditions, including, among others: (i) adoption of the Merger Agreement by the affirmative vote of the holders of at least a majority of the voting power of the outstanding shares of NIC Common Stock; (ii) the accuracy of the parties&#8217; respective representations and warranties in the Merger Agreement, subject to specified materiality qualifications; (iii) compliance by the parties with their respective covenants in the Merger Agreement in all material respects; (iv) the absence of any order restraining, enjoining, or otherwise prohibiting the consummation of the Merger; and (v) the expiration of the waiting period applicable to the Merger under the Hart-Scott-Rodino Antitrust Improvements Act of 1976, as amended.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Merger Consideration is expected to be financed with a combination of new debt and cash on the Company&#8217;s balance sheet. In connection with its entry into the Merger Agreement, the Company obtained a commitment from Goldman Sachs Bank USA for a $<ix:nonFraction unitRef="usd" contextRef="i940e5f8f5aaf4e33a5b7c91c0c91720f_I20210209" decimals="-8" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity" scale="9" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzE0MjkzNjUxMTgxMTc4_e0370b8f-544e-4662-bb46-5e5874a95e2d">1.6</ix:nonFraction>&#160;billion <ix:nonNumeric contextRef="i1148a91f539c4aafbd7013a9683e5513_D20210209-20210209" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzI3NDg3NzkwODk1NTY_b6dc317b-c470-4376-a850-1a09df50e8a9">364-day</ix:nonNumeric> senior unsecured bridge loan facility, subject to customary conditions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Merger Agreement and the consummation of the transactions contemplated thereby have been unanimously approved by the NIC board of directors, and the NIC board of directors has resolved to recommend to the stockholders of NIC to adopt the Merger Agreement, subject to its terms and conditions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Merger Agreement provides that, at the Effective Time, with respect to NIC restricted stock awards, (i) each vested restricted stock award will be converted into the right to receive the Merger Consideration with respect to each share of NIC Common Stock subject to such awards, less applicable withholding of taxes and other authorized deductions, (ii) each outstanding unvested performance-based restricted stock award will automatically vest in full, in accordance with the terms of its award agreement, and be converted into the right to receive the Merger Consideration with respect to such number of shares of NIC Common Stock, less applicable withholding of taxes and other authorized deductions, and (iii) each outstanding unvested time-based restricted stock will be assumed by the Company and converted into corresponding awards relating to the Company&#8217;s Common Stock in accordance with the terms set forth in the Merger Agreement.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Merger Agreement contains customary representations, warranties and covenants made by each of the Company, Merger Sub, and NIC, including, among others, covenants by NIC regarding the conduct of its business during the pendency of the transactions contemplated by the Merger Agreement, public disclosures and other matters. NIC is required, among other things, not to solicit alternative business combination transactions and, subject to certain exceptions, not to engage in discussions or negotiations regarding an alternative business combination transaction.</span></div></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-33</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><ix:continuation id="ib95a2862fe274873b8e2a10c56591b3b"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Both the Company and NIC may terminate the Merger Agreement under certain specified circumstances, including (i) if the Merger is not consummated by June 30, 2021, subject to an extension of up to three months in order to obtain required regulatory approval, (ii) if the approval of the NIC stockholders is not obtained, and (iii) if NIC&#8217;s board makes an adverse recommendation change with respect to the proposed transaction or approve or recommend a superior acquisition proposal. In certain circumstances in connection with the termination of the Merger Agreement, including if NIC&#8217;s board of directors changes or withdraws its recommendation of the Merger to its stockholders, fails to include its recommendation to shareholders in NIC&#8217;s proxy statement, or terminates the Merger Agreement to enter into an agreement with respect to a &#8220;superior proposal,&#8221; NIC will be required to pay the Company a termination fee of $<ix:nonFraction unitRef="usd" contextRef="i70b33b6ad040497281f685b30659ca9b_D20210209-20210209" decimals="-6" format="ixt:numdotdecimal" name="tyl:BusinessCombinationTerminationFee" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzQ5NDc4MDIzNDUwOTU_62e8dc52-e7f6-4a57-beb4-5d2ebfe27bea">55</ix:nonFraction>&#160;million in cash.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The foregoing description of the Merger Agreement does not purport to be complete and is qualified in its entirety by the full text of the Merger Agreement, a copy of which is filed as Exhibit 2.1 to our Form 8-K, dated February 10, 2021, is incorporated by reference herein.</span></div></ix:continuation><div id="i8b7048d9282b49808c9b0dc46622e6f3_181"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(19)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:QuarterlyFinancialInformationTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90ZXh0cmVnaW9uOjU4YTJmMzBkNDg0YTQ3NzNhNzRjZmU1ZTM0NWFhYjAzXzE4OQ_91a48571-35c9-4b2e-906b-62fe2671db7f" continuedAt="iebcd5e955b964b7080d668046f84d269" escape="true">QUARTERLY FINANCIAL INFORMATION (unaudited)</ix:nonNumeric></span></div><ix:continuation id="iebcd5e955b964b7080d668046f84d269"><ix:nonNumeric contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231" name="us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90ZXh0cmVnaW9uOjU4YTJmMzBkNDg0YTQ3NzNhNzRjZmU1ZTM0NWFhYjAzXzE4NA_5c8e0201-1cae-4749-a08f-22ac7ecda537" escape="true"><div style="margin-bottom:6pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table contains selected financial information from unaudited statements of income for each quarter of 2020 and 2019:</span></div><div style="margin-bottom:11pt;margin-top:17pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.444%"><tr><td style="width:1.0%"></td><td style="width:26.694%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.282%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.282%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.282%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.282%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.282%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.282%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.282%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.287%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Quarters Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Dec. 31</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Sept. 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mar. 31</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Dec. 31</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Sept. 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mar. 31</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMS0xLTEtMA_2ef8d29a-6a0c-4369-93a8-36bfe7532961">283,285</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMy0xLTEtMA_1579ecfb-82e2-4b9d-9aaa-a9760b32a22a">285,746</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtNS0xLTEtMA_f93f3664-f2b6-41f2-b723-64a5ff53ffdb">271,091</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtNy0xLTEtMA_442f3113-0a20-442e-b5e1-c81e97820760">276,541</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtOS0xLTEtMA_0229c6c8-0afd-4453-86af-6847ba637e14">288,837</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMTEtMS0xLTA_5b8f02c6-338a-4fdb-8b6b-8748df62a372">275,400</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMTMtMS0xLTA_a87f6e25-5729-46ce-bb1f-aab23bf1d715">275,124</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMTUtMS0xLTA_46a56011-3292-4c57-aa0f-9b09f01102ee">247,066</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMS0xLTEtMA_eade6634-84ef-4c66-816e-814e738bba85">138,669</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMy0xLTEtMA_25f4bacb-916f-4aa8-9ca9-1dc8381cc71a">143,509</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtNS0xLTEtMA_1bc45803-3ccd-4cbd-b60b-f2fd4e1095ac">131,203</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtNy0xLTEtMA_0aead77d-2054-4d3b-956b-fd97ceceab04">129,131</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtOS0xLTEtMA_e2199e92-78d3-47c8-b476-45b42e36fb98">142,275</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMTEtMS0xLTA_c5f856e6-9535-47c5-bdfb-666f974b62f2">130,717</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMTMtMS0xLTA_2766476d-d5c6-446b-8069-6074d7fc68ec">127,860</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMTUtMS0xLTA_f9a75f5e-466f-41c1-893c-f71a26e0af89">116,048</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income before income taxes </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMS0xLTEtMA_acc76093-b972-42e1-bdfb-280af5c1d913">48,412</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMy0xLTEtMA_47827042-a541-4d22-88d7-8c4b332eea17">49,936</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtNS0xLTEtMA_ef502c2e-cbb4-4a62-b633-07d320e96c0b">41,811</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtNy0xLTEtMA_4fb04beb-96c5-4b7b-b303-7a83d2275611">34,883</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtOS0xLTEtMA_79af6782-1079-4887-a064-5987a0177ed5">47,790</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMTEtMS0xLTA_d04e0d0d-e1aa-4568-92a3-cca97d0ac46d">40,552</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMTMtMS0xLTA_66fc6763-c9a4-4f20-ab73-18564e06573c">36,419</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMTUtMS0xLTA_a9993933-cd74-44a5-8ccf-fc52b4be2d68">35,077</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMS0xLTEtMA_d739db43-1ff3-4df5-a82f-771a949f3976">54,094</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMy0xLTEtMA_753270f0-67b5-404e-b109-b3090f8ae628">39,284</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtNS0xLTEtMA_5ef2d5d0-15f9-4b2e-9a9e-e0cb12cf21c5">53,892</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtNy0xLTEtMA_ed7dd8c2-017b-4026-87a3-8aa629f10d76">47,550</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtOS0xLTEtMA_de8bceaa-12ea-4a1d-9fc6-8ace687e7761">46,790</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMTEtMS0xLTA_faca6040-f43c-4090-9f25-288a9b370c06">40,390</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMTMtMS0xLTA_b601e956-715a-4df1-8ad5-6b55cab57f9c">31,999</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMTUtMS0xLTA_23832f2a-2ade-4821-b2ae-1ae10ea4c796">27,348</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Earnings per diluted share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMS0xLTEtMA_93ce44b6-7d9c-4ae5-99e1-f654513f5a77">1.29</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMy0xLTEtMA_3f65a2ce-f426-47ee-bef4-444e3d2d4f78">0.94</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctNS0xLTEtMA_fc749a67-4d13-4784-ada6-55127f4d902a">1.30</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctNy0xLTEtMA_4554e9da-ab67-43b2-bfdd-fd069c575f3d">1.16</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctOS0xLTEtMA_08fe4caf-4254-48b5-b69b-118e5331f41c">1.15</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMTEtMS0xLTA_3ee0d65b-5db7-4c2c-adb9-7a7bca635713">1.00</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMTMtMS0xLTA_771cabea-e339-4a88-9596-68bd146c560c">0.80</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMTUtMS0xLTA_378df129-a15c-4850-bbb8-85c818c1b9fd">0.69</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares used in computing diluted<br/>&#160;&#160; earnings per share</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMS0xLTEtMA_824dc42a-6f3f-42f4-a824-8b128314ce8b">41,925</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMy0xLTEtMA_e5d9f46c-d317-42ec-bce3-8b7e1343fc59">41,606</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtNS0xLTEtMA_e975a982-2990-4bd7-9003-44586f401cf5">41,416</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtNy0xLTEtMA_2be5b539-9f91-44ea-bc5e-f80be106ec5d">41,144</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtOS0xLTEtMA_87ea7f5e-ddb4-4ae2-9653-6d1bb2b36fb7">40,736</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMTEtMS0xLTA_50410db3-4bc8-40c1-94c3-2c9d473bad99">40,280</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMTMtMS0xLTA_e14e32ea-2af8-44bc-ae21-a7bfa6e37e8b">39,813</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMTUtMS0xLTA_bc507893-b33f-4018-a781-763a70c4d35c">39,585</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">F-34</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23
<SEQUENCE>2
<FILENAME>tyl12312020exhibit-23.htm
<DESCRIPTION>EX-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 -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="i962cf65c84004026addea45b95059b64_1"></div><div style="min-height:42.75pt;width:100%"><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit 23</font></div><div><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consent of Independent Registered Public Accounting Firm</font></div><div style="text-align:center"><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We consent to the incorporation by reference in the following Registration Statements&#58; </font></div><div><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)&#160;&#160;&#160;&#160;Registration Statement (Form S-8 No. 333-225011) pertaining to the Tyler Technologies, Inc. 2018 Stock Option Plan,</font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)&#160;&#160;&#160;&#160;Registration Statement (Form S-8 No. 333-182318) pertaining to the Tyler Technologies, Inc. Employee Stock Purchase Plan&#59;</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">of our reports dated February 19, 2021, 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 December 31, 2020.</font></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font><br></font></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#47;s&#47; ERNST&#160;&#38; YOUNG LLP</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Dallas, Texas</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February&#160;19, 2021</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><br></font></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>3
<FILENAME>tyl12312020exhibit311.htm
<DESCRIPTION>EX-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 -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="i5cbffb4801c84976ac0265f54b3605d7_1"></div><div style="min-height:54pt;width:100%"><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit 31.1</font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CERTIFICATIONS</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, H. Lynn Moore, Jr., certify that&#58;</font></div><div style="text-align:center"><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">I have reviewed this annual report on Form 10-K of Tyler Technologies, Inc.&#59;</font></div><div><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2. &#160;&#160;&#160;&#160;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&#59;</font></div><div style="padding-left:36pt;text-indent:-36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.&#160;&#160;&#160;&#160;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&#59;</font></div><div style="padding-left:36pt;text-indent:-36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4. &#160;&#160;&#160;&#160;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&#58;</font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;</font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:29.07pt">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&#59;</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">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&#59;</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:29.07pt">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&#59; and</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">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&#59; and</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.&#160;&#160;&#160;&#160;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)&#58;</font></div><div style="padding-left:36pt;text-indent:-36pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:29.07pt">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&#59; and</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">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><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:89.583%"><tr><td style="width:1.0%"></td><td style="width:31.148%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.179%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.241%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.575%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.257%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58; February 19, 2021</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; H. Lynn Moore, Jr.</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">H. Lynn Moore, Jr.</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></td></tr></table></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>4
<FILENAME>tyl12312020exhibit312.htm
<DESCRIPTION>EX-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 -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="ieaeb5f2fabc248c68f85a74be0a15629_1"></div><div style="min-height:42.75pt;width:100%"><div style="text-align:right"><font><br></font></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit 31.2</font></div><div><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CERTIFICATIONS</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Brian K. Miller, certify that&#58;</font></div><div style="text-align:center"><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">I have reviewed this annual report on Form 10-K of Tyler Technologies, Inc.&#59;</font></div><div><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2. &#160;&#160;&#160;&#160;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&#59;</font></div><div style="padding-left:36pt;text-indent:-36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.&#160;&#160;&#160;&#160;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&#59;</font></div><div style="padding-left:36pt;text-indent:-36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4. &#160;&#160;&#160;&#160;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&#58;</font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;</font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:29.07pt">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&#59;</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">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&#59;</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:29.07pt">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&#59; and</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">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&#59; and</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.&#160;&#160;&#160;&#160;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)&#58;</font></div><div style="padding-left:36pt;text-indent:-36pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:29.07pt">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&#59; and</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">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><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:24.706%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:24.266%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.005%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:42.890%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58; February 19, 2021</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Brian K. Miller</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Brian K. Miller</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President and Chief Financial Officer</font></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>5
<FILENAME>tyl12312020exhibit321.htm
<DESCRIPTION>EX-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 -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="i9a1845847bfb40428a28e045beee4634_1"></div><div style="min-height:72pt;width:100%"><div style="text-align:right"><font><br></font></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit 32.1</font></div><div style="text-align:right"><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CERTIFICATION PURSUANT TO</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="text-align:center"><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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&#58;</font></div><div><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">The Report fully complies with the requirements of Section&#160;13(a) or 15(d) of the Securities Exchange Act of 1934 as amended&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:28.5pt">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Corporation.</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:92.690%"><tr><td style="width:1.0%"></td><td style="width:21.770%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.669%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.316%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.588%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:52.057%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58; February 19, 2021</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; H. Lynn Moore, Jr.</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">H. Lynn Moore, Jr.</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Brian K. Miller</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Brian K. Miller</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President and Chief Financial Officer</font></td></tr></table></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div><font><br></font></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>tyl-20201231.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:cb70be07-24b1-4aa6-9599-1da6bf66cbac,g:07fa3be8-7f1e-4f83-baed-fe8860b305ca-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:tyl="http://www.tylertech.com/20201231" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.tylertech.com/20201231">
  <xs:import namespace="http://fasb.org/srt/2020-01-31" schemaLocation="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2020-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.xbrl.org/2003/xlink-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd"/>
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2020-01-31" schemaLocation="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tyl-20201231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tyl-20201231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tyl-20201231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tyl-20201231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="Cover" roleURI="http://www.tylertech.com/role/Cover">
        <link:definition>0001001 - 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="ConsolidatedStatementsofComprehensiveIncome" roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome">
        <link:definition>1001002 - 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="ConsolidatedBalanceSheets" roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheets">
        <link:definition>1002003 - 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>1003004 - 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>1004005 - 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="ConsolidatedStatementsofShareholdersEquity" roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity">
        <link:definition>1005006 - 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="SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES">
        <link:definition>2101101 - 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="SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies">
        <link:definition>2202201 - 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="SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables" roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables">
        <link:definition>2303301 - 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>
      <link:roleType id="SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails" roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails">
        <link:definition>2404401 - 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="SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails" roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails">
        <link:definition>2405402 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for credit loss rollforward (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="ACQUISITIONS" roleURI="http://www.tylertech.com/role/ACQUISITIONS">
        <link:definition>2106102 - 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="ACQUISITIONSNarrativeDetail" roleURI="http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail">
        <link:definition>2407403 - 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="PROPERTYANDEQUIPMENTNET" roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET">
        <link:definition>2108103 - 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="PROPERTYANDEQUIPMENTNETTables" roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETTables">
        <link:definition>2309302 - 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="PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail" roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail">
        <link:definition>2410404 - 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="PROPERTYANDEQUIPMENTNETAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail">
        <link:definition>2411405 - 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="GOODWILLANDOTHERINTANGIBLEASSETS" roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS">
        <link:definition>2112104 - 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="GOODWILLANDOTHERINTANGIBLEASSETSTables" roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables">
        <link:definition>2313303 - 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="GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail" roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail">
        <link:definition>2414406 - 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="GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail" roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail">
        <link:definition>2415407 - 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="GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail">
        <link:definition>2416408 - 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>2417409 - 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="GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail" roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail">
        <link:definition>2418410 - 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="ACCRUEDLIABILITIES" roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIES">
        <link:definition>2119105 - 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="ACCRUEDLIABILITIESTables" roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIESTables">
        <link:definition>2320304 - 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="ACCRUEDLIABILITIESDetail" roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail">
        <link:definition>2421411 - Disclosure - 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="REVOLVINGLINEOFCREDIT" roleURI="http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT">
        <link:definition>2122106 - 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="REVOLVINGLINEOFCREDITDetail" roleURI="http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail">
        <link:definition>2423412 - Disclosure - REVOLVING LINE OF CREDIT (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="INCOMETAX" roleURI="http://www.tylertech.com/role/INCOMETAX">
        <link:definition>2124107 - 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="INCOMETAXTables" roleURI="http://www.tylertech.com/role/INCOMETAXTables">
        <link:definition>2325305 - 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="INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail" roleURI="http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail">
        <link:definition>2426413 - Disclosure - INCOME TAX - Income Tax (Benefit) Provision 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>2427414 - 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>2428415 - 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="INCOMETAXAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail">
        <link:definition>2429416 - 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="SHAREHOLDERSEQUITY" roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITY">
        <link:definition>2130108 - 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="SHAREHOLDERSEQUITYTables" roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables">
        <link:definition>2331306 - Disclosure - SHAREHOLDERS&#8217; 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="SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail" roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail">
        <link:definition>2432417 - Disclosure - SHAREHOLDERS&#8217; 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="SHAREHOLDERSEQUITYAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail">
        <link:definition>2433418 - Disclosure - SHAREHOLDERS&#8217; 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="SHAREBASEDCOMPENSATION" roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATION">
        <link:definition>2134109 - 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="SHAREBASEDCOMPENSATIONTables" roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables">
        <link:definition>2335307 - 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="SHAREBASEDCOMPENSATIONAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail">
        <link:definition>2436419 - 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="SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail" roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail">
        <link:definition>2437420 - 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="SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails" roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails">
        <link:definition>2438421 - 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>2439422 - 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="SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail" roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail">
        <link:definition>2440423 - 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="SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail" roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail">
        <link:definition>2441424 - 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="EARNINGSPERSHARE" roleURI="http://www.tylertech.com/role/EARNINGSPERSHARE">
        <link:definition>2142110 - 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="EARNINGSPERSHARETables" roleURI="http://www.tylertech.com/role/EARNINGSPERSHARETables">
        <link:definition>2343308 - 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="EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail" roleURI="http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail">
        <link:definition>2444425 - 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="EARNINGSPERSHAREAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/EARNINGSPERSHAREAdditionalInformationDetail">
        <link:definition>2445426 - 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="LEASES" roleURI="http://www.tylertech.com/role/LEASES">
        <link:definition>2146111 - 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="LEASESTables" roleURI="http://www.tylertech.com/role/LEASESTables">
        <link:definition>2347309 - 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="LEASESAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/LEASESAdditionalInformationDetail">
        <link:definition>2448427 - 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="LEASESScheduleofleasecostDetails" roleURI="http://www.tylertech.com/role/LEASESScheduleofleasecostDetails">
        <link:definition>2449428 - 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>2450429 - 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>2451430 - 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="LEASESMaturityofleaseliabilitiesDetails" roleURI="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails">
        <link:definition>2452431 - 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="LEASESMaturityofleaseliabilitiesDetails_1" roleURI="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1">
        <link:definition>2452431 - 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="LEASESScheduleoffutureminimumoperatingrentalincomeDetails" roleURI="http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails">
        <link:definition>2453432 - 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="EMPLOYEEBENEFITPLANS" roleURI="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS">
        <link:definition>2154112 - 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>2455433 - 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="COMMITMENTSANDCONTINGENCIES" roleURI="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES">
        <link:definition>2156113 - 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>2457434 - 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="SEGMENTANDRELATEDINFORMATION" roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION">
        <link:definition>2158114 - 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="SEGMENTANDRELATEDINFORMATIONTables" roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables">
        <link:definition>2359310 - 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="SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail">
        <link:definition>2460435 - 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="SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail" roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail">
        <link:definition>2461436 - 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="SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail" roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail">
        <link:definition>2462437 - 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="DISAGGREGATIONOFREVENUE" roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE">
        <link:definition>2163115 - 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="DISAGGREGATIONOFREVENUETables" roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables">
        <link:definition>2364311 - 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="DISAGGREGATIONOFREVENUEDetails" roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails">
        <link:definition>2465438 - 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="DISAGGREGATIONOFREVENUEAdditionalInformationDetails" roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails">
        <link:definition>2466439 - Disclosure - DISAGGREGATION OF REVENUE - 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="DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS" roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS">
        <link:definition>2167116 - 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="DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables" roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables">
        <link:definition>2368312 - 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="DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails" roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails">
        <link:definition>2469440 - 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>2470441 - 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="DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1" roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1">
        <link:definition>2470441 - 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="DEFERREDCOMMISSIONS" roleURI="http://www.tylertech.com/role/DEFERREDCOMMISSIONS">
        <link:definition>2171117 - 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>2472442 - 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="SUBSEQUENTEVENTS" roleURI="http://www.tylertech.com/role/SUBSEQUENTEVENTS">
        <link:definition>2173118 - 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="SUBSEQUENTEVENTSDetails" roleURI="http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails">
        <link:definition>2474443 - Disclosure - SUBSEQUENT EVENTS (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="QUARTERLYFINANCIALINFORMATIONunaudited" roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited">
        <link:definition>2175119 - 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="QUARTERLYFINANCIALINFORMATIONunauditedTables" roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables">
        <link:definition>2376313 - 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="QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail" roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail">
        <link:definition>2477444 - 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>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="tyl_SegmentReportingInformationCapitalExpenditures" abstract="false" name="SegmentReportingInformationCapitalExpenditures" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" abstract="false" name="AmortizationofCustomerandTradeNamesIntangibleAssets" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember" abstract="true" name="CostOfSubscriptionsSoftwareServicesAndMaintenanceMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_AcquiredSoftwareMember" abstract="true" name="AcquiredSoftwareMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_SoftwareAcquiredMember" abstract="true" name="SoftwareAcquiredMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_CreditAgreementMember" abstract="true" name="CreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_NICIncMember" abstract="true" name="NICIncMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_RetentionReceivableMember" abstract="true" name="RetentionReceivableMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_RecordHoldingsPtyLimitedMember" abstract="true" name="RecordHoldingsPtyLimitedMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" abstract="false" name="ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" abstract="false" name="TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_SeniorUnsecuredBridgeLoanFacilityMember" abstract="true" name="SeniorUnsecuredBridgeLoanFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_RemainingEstimatedEconomicLife" abstract="false" name="RemainingEstimatedEconomicLife" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="tyl_CaseManagementBusinessProcessManagementDataAndInsightMember" abstract="true" name="CaseManagementBusinessProcessManagementDataAndInsightMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_IncreaseDecreaseInOperatingLeaseLiabilities" abstract="false" name="IncreaseDecreaseInOperatingLeaseLiabilities" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_CourthouseTechnologiesLtdMember" abstract="true" name="CourthouseTechnologiesLtdMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_BFTRLLCMember" abstract="true" name="BFTRLLCMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_RecurringRevenuePercentageOfTotalRevenue" abstract="false" name="RecurringRevenuePercentageOfTotalRevenue" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="tyl_AssumedConversionofDilutiveSecuritiesAbstract" abstract="true" name="AssumedConversionofDilutiveSecuritiesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="tyl_BusinessAcquisitionOptionConversionPrice" abstract="false" name="BusinessAcquisitionOptionConversionPrice" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="num:perShareItemType"/>
  <xs:element id="tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" abstract="false" name="ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType"/>
  <xs:element id="tyl_GoldmanSachsBankUSAMember" abstract="true" name="GoldmanSachsBankUSAMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_ComputerEquipmentAndPurchasedSoftwareMember" abstract="true" name="ComputerEquipmentAndPurchasedSoftwareMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_BusinessCombinationTerminationFee" abstract="false" name="BusinessCombinationTerminationFee" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_NumberOfBusinessUnits" abstract="false" name="NumberOfBusinessUnits" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="tyl_NetOperatingLossCarryback" abstract="false" name="NetOperatingLossCarryback" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_AppraisalAndTaxMember" abstract="true" name="AppraisalAndTaxMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_CostMethodInvestmentOwnershipPercentage" abstract="false" name="CostMethodInvestmentOwnershipPercentage" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" abstract="false" name="DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_MPHoldingsParentInc.dbaMicroPactMember" abstract="true" name="MPHoldingsParentInc.dbaMicroPactMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" abstract="false" name="ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType"/>
  <xs:element id="tyl_DenominatorAbstract" abstract="true" name="DenominatorAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" abstract="false" name="StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="tyl_DataAndInsightMember" abstract="true" name="DataAndInsightMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_RevenueFromContractWithCustomerContractTerm" abstract="false" name="RevenueFromContractWithCustomerContractTerm" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="tyl_NumberOfWhollyOwnedSubsidiaries" abstract="false" name="NumberOfWhollyOwnedSubsidiaries" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="tyl_OperatingLeaseRightOfUseAssetsNonCash" abstract="false" name="OperatingLeaseRightOfUseAssetsNonCash" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:perShareItemType"/>
  <xs:element id="tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" abstract="true" name="NumeratorofBasicandDilutedEarningsPerShareAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="tyl_OperatingSegmentsAndCorporateNonSegmentMember" abstract="true" name="OperatingSegmentsAndCorporateNonSegmentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_RevenueFromContractWithCustomerTypicalContractTerm" abstract="false" name="RevenueFromContractWithCustomerTypicalContractTerm" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="tyl_CorporateAndEliminationsMember" abstract="true" name="CorporateAndEliminationsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_AccountingPoliciesTable" abstract="true" name="AccountingPoliciesTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" abstract="false" name="RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" abstract="false" name="ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" abstract="false" name="CapitalizedPostAcquisitionSoftwareDevelopmentCosts" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_EnterpriseSoftwareMember" abstract="true" name="EnterpriseSoftwareMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_CivicLLCMember" abstract="true" name="CivicLLCMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_MergerSubMember" abstract="true" name="MergerSubMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_MicroPactAndMyCivicMember" abstract="true" name="MicroPactAndMyCivicMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_ContractWithCustomerLiabilityRollForward" abstract="true" name="ContractWithCustomerLiabilityRollForward" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="tyl_RecurringRevenueMember" abstract="true" name="RecurringRevenueMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_SoftwareLicensesandRoyaltiesMember" abstract="true" name="SoftwareLicensesandRoyaltiesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_BuildingAndLeaseholdImprovementsMember" abstract="true" name="BuildingAndLeaseholdImprovementsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_AppraisalServicesMember" abstract="true" name="AppraisalServicesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_NonrecurringRevenueMember" abstract="true" name="NonrecurringRevenueMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_SoftwareServicesMaintenanceandSubscriptionsMember" abstract="true" name="SoftwareServicesMaintenanceandSubscriptionsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" abstract="false" name="DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_ShareBasedCompensationShareConversionRateShares" abstract="false" name="ShareBasedCompensationShareConversionRateShares" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="tyl_PercentageOfTotalGoodwill" abstract="false" name="PercentageOfTotalGoodwill" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="tyl_SalesCommissionsAmortizationPeriod" abstract="false" name="SalesCommissionsAmortizationPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="tyl_HardwareandOtherMember" abstract="true" name="HardwareandOtherMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" abstract="false" name="ContractWithCustomerLiabilityIncreaseFromDeferral" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" abstract="false" name="NumberOfLegalProceedingsThatHaveMaterialEffect" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="tyl_RevenueFromContractWithCustomerPaymentTerm" abstract="false" name="RevenueFromContractWithCustomerPaymentTerm" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="tyl_SalesCommissionRenewalPeriod" abstract="false" name="SalesCommissionRenewalPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="tyl_UnusualOrInfrequentItemOrBothExpenses" abstract="false" name="UnusualOrInfrequentItemOrBothExpenses" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_GoodwillAssessedForImpairment" abstract="false" name="GoodwillAssessedForImpairment" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" abstract="true" name="SubscriptionAndCirculationSaaSArrangementsServicesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="tyl_AccountingPoliciesLineItems" abstract="true" name="AccountingPoliciesLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="tyl_RestrictedStockUnitandPerformanceStockUnitMember" abstract="true" name="RestrictedStockUnitandPerformanceStockUnitMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>7
<FILENAME>tyl-20201231_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:cb70be07-24b1-4aa6-9599-1da6bf66cbac,g:07fa3be8-7f1e-4f83-baed-fe8860b305ca-->
<link:linkbase 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" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.tylertech.com/role/Cover" xlink:type="simple" xlink:href="tyl-20201231.xsd#Cover"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/Cover" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_c244fcac-6037-44c5-adb7-c93f44e92b96" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_b16a6d82-a331-420e-b100-1b9fa2407230" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_c244fcac-6037-44c5-adb7-c93f44e92b96" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_b16a6d82-a331-420e-b100-1b9fa2407230" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_7607457b-9761-4440-b2f2-6734c897d370" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_c244fcac-6037-44c5-adb7-c93f44e92b96" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_7607457b-9761-4440-b2f2-6734c897d370" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_a842b122-18b5-41d8-8948-8e37936a4efe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_7e634040-bbdb-49fe-8ccb-fa4ebeaa5aca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_a842b122-18b5-41d8-8948-8e37936a4efe" xlink:to="loc_us-gaap_GrossProfit_7e634040-bbdb-49fe-8ccb-fa4ebeaa5aca" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_d78d2e88-ceb0-4349-be4b-0be253f05e33" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_a842b122-18b5-41d8-8948-8e37936a4efe" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_d78d2e88-ceb0-4349-be4b-0be253f05e33" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_25e94e87-9141-443d-b020-aa7498de063e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_a842b122-18b5-41d8-8948-8e37936a4efe" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_25e94e87-9141-443d-b020-aa7498de063e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_aa78103b-4e83-45e9-8fb1-de1f92bce886" xlink:href="tyl-20201231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_a842b122-18b5-41d8-8948-8e37936a4efe" xlink:to="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_aa78103b-4e83-45e9-8fb1-de1f92bce886" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_41b96e5a-92b8-494c-b807-929555f88ef9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_bf0a0809-4b12-4154-99e9-250cd9a7c1d2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_41b96e5a-92b8-494c-b807-929555f88ef9" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_bf0a0809-4b12-4154-99e9-250cd9a7c1d2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_7c113e48-1c5a-4b53-a699-a40dcd0edf5f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_41b96e5a-92b8-494c-b807-929555f88ef9" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_7c113e48-1c5a-4b53-a699-a40dcd0edf5f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d5df5a6b-c310-411f-94dd-da2d6577ff95" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_8c7052cd-7877-466d-ac70-d7de61b234d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d5df5a6b-c310-411f-94dd-da2d6577ff95" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_8c7052cd-7877-466d-ac70-d7de61b234d4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_9ef3fc82-2e2e-49c8-b358-57c7d760e85b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d5df5a6b-c310-411f-94dd-da2d6577ff95" xlink:to="loc_us-gaap_OperatingIncomeLoss_9ef3fc82-2e2e-49c8-b358-57c7d760e85b" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedBalanceSheets"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_a4525df2-ccb8-4f4b-b624-8a3499941a9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_c6833ed7-79d2-437f-8311-437865b9afb5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a4525df2-ccb8-4f4b-b624-8a3499941a9a" xlink:to="loc_us-gaap_CommonStockValue_c6833ed7-79d2-437f-8311-437865b9afb5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_6c3ecb28-8d49-445b-a277-e2f17c212548" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a4525df2-ccb8-4f4b-b624-8a3499941a9a" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_6c3ecb28-8d49-445b-a277-e2f17c212548" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_81d6341d-11f5-49aa-87dd-e037fea4170a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a4525df2-ccb8-4f4b-b624-8a3499941a9a" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_81d6341d-11f5-49aa-87dd-e037fea4170a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_17f32b02-2c20-4ee6-936c-e77e2135927c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a4525df2-ccb8-4f4b-b624-8a3499941a9a" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_17f32b02-2c20-4ee6-936c-e77e2135927c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_24e1bf4e-bbc6-44ff-bc83-1ef854381c7c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValue"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a4525df2-ccb8-4f4b-b624-8a3499941a9a" xlink:to="loc_us-gaap_TreasuryStockValue_24e1bf4e-bbc6-44ff-bc83-1ef854381c7c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_9c8bf9c4-08f3-4f92-a0a6-e81a592c7a10" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockValue"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_a4525df2-ccb8-4f4b-b624-8a3499941a9a" xlink:to="loc_us-gaap_PreferredStockValue_9c8bf9c4-08f3-4f92-a0a6-e81a592c7a10" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_0d1bea3a-56bf-4976-a81f-4899bc595e2b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:to="loc_us-gaap_AssetsCurrent_0d1bea3a-56bf-4976-a81f-4899bc595e2b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_6e4001e2-b976-4ab0-8146-8b8d31f45e9b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_6e4001e2-b976-4ab0-8146-8b8d31f45e9b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Investments_e6b591e6-f03d-42a7-b9a4-30c1fa438dce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Investments"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:to="loc_us-gaap_Investments_e6b591e6-f03d-42a7-b9a4-30c1fa438dce" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_5dc86717-dac6-4d3b-b7ba-d96ba7919589" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_5dc86717-dac6-4d3b-b7ba-d96ba7919589" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_0e2f054c-d419-4c83-9f2a-bf239ea79017" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_0e2f054c-d419-4c83-9f2a-bf239ea79017" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_2f7710da-3869-4f34-8edb-9080b80a3f4d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_2f7710da-3869-4f34-8edb-9080b80a3f4d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetNoncurrent_c493fdfe-8ab3-4cc6-93a8-2fc5b4718d62" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetNoncurrent"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:to="loc_us-gaap_AccountsReceivableNetNoncurrent_c493fdfe-8ab3-4cc6-93a8-2fc5b4718d62" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_e8207454-cf5c-43ac-917e-4c41473c0445" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_41248fdf-4cd5-4332-afea-8244353eeeda" xlink:to="loc_us-gaap_Goodwill_e8207454-cf5c-43ac-917e-4c41473c0445" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_97c0aedd-0ea6-44d0-b91f-bcc3feeac006" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_fe9ad7ce-5447-46bf-8531-944229f97413" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_97c0aedd-0ea6-44d0-b91f-bcc3feeac006" xlink:to="loc_us-gaap_AccountsPayableCurrent_fe9ad7ce-5447-46bf-8531-944229f97413" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_8231d7fe-8fd8-4fae-9c26-856589555260" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_97c0aedd-0ea6-44d0-b91f-bcc3feeac006" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_8231d7fe-8fd8-4fae-9c26-856589555260" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_23f58adb-4204-4503-b371-5ed57dbc57f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_97c0aedd-0ea6-44d0-b91f-bcc3feeac006" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_23f58adb-4204-4503-b371-5ed57dbc57f3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_3c475e09-12b1-4cf5-960e-86456de73906" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_97c0aedd-0ea6-44d0-b91f-bcc3feeac006" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_3c475e09-12b1-4cf5-960e-86456de73906" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_1cd48ba4-e9ec-42c2-b34f-b2980ffc54b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_4741c1b9-f12e-4cd1-ad5c-b3e868fcf71a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_1cd48ba4-e9ec-42c2-b34f-b2980ffc54b0" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_4741c1b9-f12e-4cd1-ad5c-b3e868fcf71a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_5adac790-688a-42cc-ade0-38536a2c0c3c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_1cd48ba4-e9ec-42c2-b34f-b2980ffc54b0" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_5adac790-688a-42cc-ade0-38536a2c0c3c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestments_c6a0f8f4-f49f-4a2c-b7c9-cac6bf9c0bb0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermInvestments"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_1cd48ba4-e9ec-42c2-b34f-b2980ffc54b0" xlink:to="loc_us-gaap_ShortTermInvestments_c6a0f8f4-f49f-4a2c-b7c9-cac6bf9c0bb0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrent_ceaf124d-5d44-4147-b33f-a84ae0ce36ea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_1cd48ba4-e9ec-42c2-b34f-b2980ffc54b0" xlink:to="loc_us-gaap_PrepaidExpenseCurrent_ceaf124d-5d44-4147-b33f-a84ae0ce36ea" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReceivable_c8faf169-aa04-4ff5-b35b-908aeff2d832" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReceivable"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_1cd48ba4-e9ec-42c2-b34f-b2980ffc54b0" xlink:to="loc_us-gaap_IncomeTaxReceivable_c8faf169-aa04-4ff5-b35b-908aeff2d832" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsCurrent_8d81d53f-a234-4c6f-8d30-838053cb41c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_1cd48ba4-e9ec-42c2-b34f-b2980ffc54b0" xlink:to="loc_us-gaap_OtherAssetsCurrent_8d81d53f-a234-4c6f-8d30-838053cb41c1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_f0fa1d37-9687-4366-9362-2cdfee052adc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_a32f5936-60a4-4138-b986-2d8c49c76f6d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_f0fa1d37-9687-4366-9362-2cdfee052adc" xlink:to="loc_us-gaap_LiabilitiesCurrent_a32f5936-60a4-4138-b986-2d8c49c76f6d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermLineOfCredit_a3fdc679-dec2-4834-9a2c-767b2dc04b44" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermLineOfCredit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_f0fa1d37-9687-4366-9362-2cdfee052adc" xlink:to="loc_us-gaap_LongTermLineOfCredit_a3fdc679-dec2-4834-9a2c-767b2dc04b44" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_76b7839b-9e1a-443b-b20f-b8f1905e20f9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_f0fa1d37-9687-4366-9362-2cdfee052adc" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_76b7839b-9e1a-443b-b20f-b8f1905e20f9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_2f932936-b331-4f2a-bf61-4bb0ce5fb27c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_f0fa1d37-9687-4366-9362-2cdfee052adc" xlink:to="loc_us-gaap_CommitmentsAndContingencies_2f932936-b331-4f2a-bf61-4bb0ce5fb27c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_d726d4ad-f129-4a81-97a5-ee6246350d01" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_f0fa1d37-9687-4366-9362-2cdfee052adc" xlink:to="loc_us-gaap_StockholdersEquity_d726d4ad-f129-4a81-97a5-ee6246350d01" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_5e51fe56-3cd3-4a4c-a2c3-b666f4f0f302" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_f0fa1d37-9687-4366-9362-2cdfee052adc" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_5e51fe56-3cd3-4a4c-a2c3-b666f4f0f302" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_2fbfeb92-d994-405f-a779-214aafe89dae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_f0fa1d37-9687-4366-9362-2cdfee052adc" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_2fbfeb92-d994-405f-a779-214aafe89dae" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedBalanceSheetsParenthetical"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b655527c-a3b2-4310-8ba7-054d3975b4b8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit_937ccbdb-e8ae-476a-ab63-ad76229ab330" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b655527c-a3b2-4310-8ba7-054d3975b4b8" xlink:to="loc_us-gaap_RepaymentsOfLinesOfCredit_937ccbdb-e8ae-476a-ab63-ad76229ab330" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_b137ce74-8f25-4dc0-9c5a-66b7707d6b5e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b655527c-a3b2-4310-8ba7-054d3975b4b8" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_b137ce74-8f25-4dc0-9c5a-66b7707d6b5e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_f7e84926-22aa-478e-b05e-ee70305ffc9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b655527c-a3b2-4310-8ba7-054d3975b4b8" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_f7e84926-22aa-478e-b05e-ee70305ffc9a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockPlans_3959c01b-1252-49ba-b79b-e8c9625c7a1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromStockPlans"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b655527c-a3b2-4310-8ba7-054d3975b4b8" xlink:to="loc_us-gaap_ProceedsFromStockPlans_3959c01b-1252-49ba-b79b-e8c9625c7a1c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_11bda074-7c40-463b-be82-3f9a1d033d9c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_b655527c-a3b2-4310-8ba7-054d3975b4b8" xlink:to="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_11bda074-7c40-463b-be82-3f9a1d033d9c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_7309b908-c8e8-44d9-b260-c81c4f17a13e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_7309b908-c8e8-44d9-b260-c81c4f17a13e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities_6da06ad3-e44a-40a4-a35c-d8d17be83e88" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:to="loc_us-gaap_PaymentsToAcquireMarketableSecurities_6da06ad3-e44a-40a4-a35c-d8d17be83e88" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_5848291e-1dba-4d6e-8be6-568b1a029e56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:to="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_5848291e-1dba-4d6e-8be6-568b1a029e56" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForSoftware_ce83de2d-70bd-48bd-88a1-e2c248d357ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForSoftware"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:to="loc_us-gaap_PaymentsForSoftware_ce83de2d-70bd-48bd-88a1-e2c248d357ac" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_2b0fb68c-669f-408b-8898-0a97cbe17275" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_2b0fb68c-669f-408b-8898-0a97cbe17275" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_ef73b4d8-db81-453d-9b06-528a63340b54" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_ef73b4d8-db81-453d-9b06-528a63340b54" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_8534ab19-baf4-4fdc-9744-ffa40bfff1ba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireEquityMethodInvestments"/>
    <link:calculationArc order="7" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:to="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_8534ab19-baf4-4fdc-9744-ffa40bfff1ba" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfEquityMethodInvestments_51821b71-8a66-4b6a-a94e-2afca681dce2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromSaleOfEquityMethodInvestments"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_69b7a835-2d95-4ba5-a099-e87398152a71" xlink:to="loc_us-gaap_ProceedsFromSaleOfEquityMethodInvestments_51821b71-8a66-4b6a-a94e-2afca681dce2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_a0cc9e60-43c3-4bdb-af0b-5ac47a5b2b58" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_a0cc9e60-43c3-4bdb-af0b-5ac47a5b2b58" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_38273ad0-6271-44eb-9f36-8b02fa09408f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_ShareBasedCompensation_38273ad0-6271-44eb-9f36-8b02fa09408f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_2b17101c-2bd8-4cca-a2b2-4621fed02952" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_2b17101c-2bd8-4cca-a2b2-4621fed02952" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_1610ee82-b9ea-49c3-9286-85817fd7ba1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_1610ee82-b9ea-49c3-9286-85817fd7ba1f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_d79f8a25-44ff-491d-9e2a-ff610633ffe7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_d79f8a25-44ff-491d-9e2a-ff610633ffe7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_156ca1e8-cc2b-4386-8531-9f38a75a82ae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_156ca1e8-cc2b-4386-8531-9f38a75a82ae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_1bf262b6-f061-4fb8-bca3-a6cab5e8b158" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:calculationArc order="7" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_1bf262b6-f061-4fb8-bca3-a6cab5e8b158" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_4e10ed6a-1fbc-46ad-aaeb-e870a4d8c924" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_4e10ed6a-1fbc-46ad-aaeb-e870a4d8c924" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_068bae69-4ec3-46ab-aab3-7ac312ccde24" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_068bae69-4ec3-46ab-aab3-7ac312ccde24" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_49aca85e-fbad-4a3d-ab8b-dc13b2098116" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_49aca85e-fbad-4a3d-ab8b-dc13b2098116" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_c550c696-7f43-4cdc-9c6f-1543c9aef29b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_us-gaap_NetIncomeLoss_c550c696-7f43-4cdc-9c6f-1543c9aef29b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_bb7446db-6cd0-44c3-9a2b-67961fe8c279" xlink:href="tyl-20201231.xsd#tyl_OperatingLeaseRightOfUseAssetsNonCash"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_bb7446db-6cd0-44c3-9a2b-67961fe8c279" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_c5f0a458-ffc0-44f0-bc01-e0ac9bf71218" xlink:href="tyl-20201231.xsd#tyl_IncreaseDecreaseInOperatingLeaseLiabilities"/>
    <link:calculationArc order="13" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c6c417d2-4e8b-4f3a-bead-e30b104886fb" xlink:to="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_c5f0a458-ffc0-44f0-bc01-e0ac9bf71218" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d48076a7-1006-40bc-a270-747ae8d6e38c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_1a625e15-5a97-4454-bd1d-c82010369172" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d48076a7-1006-40bc-a270-747ae8d6e38c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_1a625e15-5a97-4454-bd1d-c82010369172" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0e004eb2-f6e2-4eed-9b9c-6a6a8d37daf0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d48076a7-1006-40bc-a270-747ae8d6e38c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0e004eb2-f6e2-4eed-9b9c-6a6a8d37daf0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5eb12f7b-a790-489e-a21c-cc0e239ddf44" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d48076a7-1006-40bc-a270-747ae8d6e38c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5eb12f7b-a790-489e-a21c-cc0e239ddf44" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofShareholdersEquity"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACQUISITIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACQUISITIONS"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ACQUISITIONS" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACQUISITIONSNarrativeDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNET"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_321de5ed-e72c-4607-8ff7-b5e21dba3e3d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_af58822e-f98f-49cd-974c-e1d049ef0c77" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_321de5ed-e72c-4607-8ff7-b5e21dba3e3d" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_af58822e-f98f-49cd-974c-e1d049ef0c77" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_0e5fa929-664e-44b7-9cbf-de4d015cef3c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_321de5ed-e72c-4607-8ff7-b5e21dba3e3d" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_0e5fa929-664e-44b7-9cbf-de4d015cef3c" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETS"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_cfc79b76-f849-429b-8783-5635866b51f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_a185fbe0-5374-46f6-88d2-bb5837166f38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_cfc79b76-f849-429b-8783-5635866b51f3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_a185fbe0-5374-46f6-88d2-bb5837166f38" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_e10f65cb-4f17-4136-8e32-a23936d69405" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_cfc79b76-f849-429b-8783-5635866b51f3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_e10f65cb-4f17-4136-8e32-a23936d69405" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_be699991-f6bc-41eb-98b1-b23b8afd0ec3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_b5eb8482-1d34-4f68-8f71-5e43b363fa38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_be699991-f6bc-41eb-98b1-b23b8afd0ec3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_b5eb8482-1d34-4f68-8f71-5e43b363fa38" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_edcfcafe-8275-40f8-b49d-9fcc4b4ea93c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_be699991-f6bc-41eb-98b1-b23b8afd0ec3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_edcfcafe-8275-40f8-b49d-9fcc4b4ea93c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_d2d8af7f-b5be-44f5-aa33-f8329518f2d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_be699991-f6bc-41eb-98b1-b23b8afd0ec3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_d2d8af7f-b5be-44f5-aa33-f8329518f2d1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_b3f8103a-aba3-4e69-a727-8a7dd07b241d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_be699991-f6bc-41eb-98b1-b23b8afd0ec3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_b3f8103a-aba3-4e69-a727-8a7dd07b241d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_1c0b768c-5890-4cbb-bb6d-5d88e87b3998" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_be699991-f6bc-41eb-98b1-b23b8afd0ec3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_1c0b768c-5890-4cbb-bb6d-5d88e87b3998" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_e28de020-51ee-4dd1-9c32-8adaaa56ea14" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_be699991-f6bc-41eb-98b1-b23b8afd0ec3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_e28de020-51ee-4dd1-9c32-8adaaa56ea14" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIES"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIES" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIESTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIESTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIESDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_8fc2a3b4-6c43-4970-8d3c-9fe66a1d8925" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_7a57b91d-ce89-4f69-9cd1-abf77b828fc8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_8fc2a3b4-6c43-4970-8d3c-9fe66a1d8925" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_7a57b91d-ce89-4f69-9cd1-abf77b828fc8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_3bb8417c-6576-4de7-bd28-1cb46fbcb8a6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_8fc2a3b4-6c43-4970-8d3c-9fe66a1d8925" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_3bb8417c-6576-4de7-bd28-1cb46fbcb8a6" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT" xlink:type="simple" xlink:href="tyl-20201231.xsd#REVOLVINGLINEOFCREDIT"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#REVOLVINGLINEOFCREDITDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAX" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAX"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/INCOMETAX" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/INCOMETAXTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_6890f26d-7377-4eb1-bf7a-a54dab2caade" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_682e055f-5996-4462-a226-92ce86cc4b57" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_6890f26d-7377-4eb1-bf7a-a54dab2caade" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_682e055f-5996-4462-a226-92ce86cc4b57" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_768ed6a3-d265-4bf4-8888-a9dfb334010d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_6890f26d-7377-4eb1-bf7a-a54dab2caade" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_768ed6a3-d265-4bf4-8888-a9dfb334010d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ccb1189e-a466-4e7a-b1dd-a53a16f70dc5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_4f1fe779-48ce-4766-b9aa-6f03b73db595" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ccb1189e-a466-4e7a-b1dd-a53a16f70dc5" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_4f1fe779-48ce-4766-b9aa-6f03b73db595" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_939c992e-c40b-4728-ad28-110cabae5da5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ccb1189e-a466-4e7a-b1dd-a53a16f70dc5" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_939c992e-c40b-4728-ad28-110cabae5da5" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_b45fc624-f586-44a3-9294-b196da91aedf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_b45fc624-f586-44a3-9294-b196da91aedf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_a42df8ed-b91a-453e-82cb-c7036e3347dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_a42df8ed-b91a-453e-82cb-c7036e3347dd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_80a91b3c-678c-4e97-878f-4fc614af28ee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_80a91b3c-678c-4e97-878f-4fc614af28ee" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_b476f946-e881-4a8d-b147-daa95b059336" xlink:href="tyl-20201231.xsd#tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:to="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_b476f946-e881-4a8d-b147-daa95b059336" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_8027cae2-65ee-46eb-9619-e1925ae6258b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCredits_8027cae2-65ee-46eb-9619-e1925ae6258b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_c723a6be-0635-44b9-ba44-32e624f5e455" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_c723a6be-0635-44b9-ba44-32e624f5e455" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_b2b4e420-9a01-4f13-9d31-23c9403fc720" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_b2b4e420-9a01-4f13-9d31-23c9403fc720" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NetOperatingLossCarryback_445857f2-b1af-479b-a51d-eb4175e5cb2f" xlink:href="tyl-20201231.xsd#tyl_NetOperatingLossCarryback"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_561a15e7-94ee-455b-a432-2374e614ceb3" xlink:to="loc_tyl_NetOperatingLossCarryback_445857f2-b1af-479b-a51d-eb4175e5cb2f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_8ad20d3e-f19d-4e81-9127-46e1e22c1bf2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_28f4c1b1-d8ba-4cca-b2ae-3f928d1f0b02" xlink:href="tyl-20201231.xsd#tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_8ad20d3e-f19d-4e81-9127-46e1e22c1bf2" xlink:to="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_28f4c1b1-d8ba-4cca-b2ae-3f928d1f0b02" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_3529d479-f10f-4211-8448-49a3816e286f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_8ad20d3e-f19d-4e81-9127-46e1e22c1bf2" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_3529d479-f10f-4211-8448-49a3816e286f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_6ac50434-78e3-46c5-a738-154fdc509c04" xlink:href="tyl-20201231.xsd#tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_8ad20d3e-f19d-4e81-9127-46e1e22c1bf2" xlink:to="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_6ac50434-78e3-46c5-a738-154fdc509c04" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_05c7202c-77b7-4509-96eb-785df3cf39ae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_00245242-bdd1-4f3b-b90f-e2c96cb58437" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_05c7202c-77b7-4509-96eb-785df3cf39ae" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_00245242-bdd1-4f3b-b90f-e2c96cb58437" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_40429d1a-6de8-48a6-bda5-c588d19fa60c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_05c7202c-77b7-4509-96eb-785df3cf39ae" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_40429d1a-6de8-48a6-bda5-c588d19fa60c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_344994ad-5ed1-43a6-858b-c01cfb90106d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_47eb8882-cef5-432f-920d-36cf049d426a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_344994ad-5ed1-43a6-858b-c01cfb90106d" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_47eb8882-cef5-432f-920d-36cf049d426a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_f0185d84-2309-4276-949c-fec766548f07" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_344994ad-5ed1-43a6-858b-c01cfb90106d" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_f0185d84-2309-4276-949c-fec766548f07" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_ad09d7f6-4f8d-4666-b9c4-58d6539ed7be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_6716e142-0ab8-4386-a7b5-e465fe95b39e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_ad09d7f6-4f8d-4666-b9c4-58d6539ed7be" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_6716e142-0ab8-4386-a7b5-e465fe95b39e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_602e4cd8-5eba-4230-8562-f4064e84a292" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_ad09d7f6-4f8d-4666-b9c4-58d6539ed7be" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_602e4cd8-5eba-4230-8562-f4064e84a292" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_ac4f45b8-c38f-44aa-ac2d-a839046dd49f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_ad09d7f6-4f8d-4666-b9c4-58d6539ed7be" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_ac4f45b8-c38f-44aa-ac2d-a839046dd49f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_1f5166f7-260c-454d-9adf-db9a38972ef6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_ad09d7f6-4f8d-4666-b9c4-58d6539ed7be" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_1f5166f7-260c-454d-9adf-db9a38972ef6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsDeferredIncome_ed43aec1-23c9-4a3a-b9b4-1f9ec1c53c29" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsDeferredIncome"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_ad09d7f6-4f8d-4666-b9c4-58d6539ed7be" xlink:to="loc_us-gaap_DeferredTaxAssetsDeferredIncome_ed43aec1-23c9-4a3a-b9b4-1f9ec1c53c29" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITY" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITY"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITY" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATION" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATION"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATION" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONStockOptionActivityDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_6e221241-0930-41c3-904f-ee176296aae9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_cfc80184-2d2a-44c8-b29b-7505cbb3e5bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_6e221241-0930-41c3-904f-ee176296aae9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_cfc80184-2d2a-44c8-b29b-7505cbb3e5bb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_c0b00ead-c4bf-43d3-937c-562bbc90ee8d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_6e221241-0930-41c3-904f-ee176296aae9" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_c0b00ead-c4bf-43d3-937c-562bbc90ee8d" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHARE" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHARE"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHARE" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHARETables" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHARETables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHARETables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_dd566447-5308-479c-8a04-a59e3a3e5675" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_4ebf79f7-1f73-47df-8192-2da7b5d2e8f0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_dd566447-5308-479c-8a04-a59e3a3e5675" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_4ebf79f7-1f73-47df-8192-2da7b5d2e8f0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_56ca1b72-49c1-46c3-9ea9-5bca048db67f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_dd566447-5308-479c-8a04-a59e3a3e5675" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_56ca1b72-49c1-46c3-9ea9-5bca048db67f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHAREAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHAREAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHAREAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASES" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASES"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASES" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASESTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASESAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofleasecostDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofleasecostDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofleasecostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_32a3fe46-25e0-41d3-83a2-89a3b5c4d1ab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_352ecaac-0619-4d3b-a213-7fe314f15cfa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseCost"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_32a3fe46-25e0-41d3-83a2-89a3b5c4d1ab" xlink:to="loc_us-gaap_OperatingLeaseCost_352ecaac-0619-4d3b-a213-7fe314f15cfa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_d5c46784-6438-4e34-9e57-1fc58e49440e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_32a3fe46-25e0-41d3-83a2-89a3b5c4d1ab" xlink:to="loc_us-gaap_ShortTermLeaseCost_d5c46784-6438-4e34-9e57-1fc58e49440e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_fce9c709-e72f-4c70-845e-d7b24cad9009" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableLeaseCost"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_32a3fe46-25e0-41d3-83a2-89a3b5c4d1ab" xlink:to="loc_us-gaap_VariableLeaseCost_fce9c709-e72f-4c70-845e-d7b24cad9009" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofleasesassetsandliabilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_7f7eba49-1662-4edd-a93d-e392db6540bc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_3c536a86-de3c-4dc9-9c1a-a34ddfce03b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_7f7eba49-1662-4edd-a93d-e392db6540bc" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_3c536a86-de3c-4dc9-9c1a-a34ddfce03b9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_8efdf4c7-f753-4533-a577-2d402e8c82dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_7f7eba49-1662-4edd-a93d-e392db6540bc" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_8efdf4c7-f753-4533-a577-2d402e8c82dc" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofotherinformationrelatedtoleasesDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESMaturityofleaseliabilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_0ccc5839-13b1-4c9d-8527-69cc2f8e4dc2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_34aaf693-e143-40d2-9e0a-5676b0d20a81" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_0ccc5839-13b1-4c9d-8527-69cc2f8e4dc2" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_34aaf693-e143-40d2-9e0a-5676b0d20a81" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_ac9ad7eb-3e06-4c1b-add8-db52b056da7c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_0ccc5839-13b1-4c9d-8527-69cc2f8e4dc2" xlink:to="loc_us-gaap_OperatingLeaseLiability_ac9ad7eb-3e06-4c1b-add8-db52b056da7c" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESMaturityofleaseliabilitiesDetails_1"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1b50fc28-0a42-4736-aab6-22c182b0a053" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_4c4c19a2-be53-4832-843a-43a4b8c16f6c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1b50fc28-0a42-4736-aab6-22c182b0a053" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_4c4c19a2-be53-4832-843a-43a4b8c16f6c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_da1263c2-1c6f-4198-8497-ac0a7ebef8a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1b50fc28-0a42-4736-aab6-22c182b0a053" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_da1263c2-1c6f-4198-8497-ac0a7ebef8a7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_74072bff-7b83-46b4-935f-ed807c638e72" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1b50fc28-0a42-4736-aab6-22c182b0a053" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_74072bff-7b83-46b4-935f-ed807c638e72" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_d22d5358-24d3-477d-b626-0550935a98b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1b50fc28-0a42-4736-aab6-22c182b0a053" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_d22d5358-24d3-477d-b626-0550935a98b9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_c6e1e4f4-b149-4bbe-8d00-988e6040c37c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1b50fc28-0a42-4736-aab6-22c182b0a053" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_c6e1e4f4-b149-4bbe-8d00-988e6040c37c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_14aae69f-d466-4076-b4e6-4b693cbaca39" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1b50fc28-0a42-4736-aab6-22c182b0a053" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_14aae69f-d466-4076-b4e6-4b693cbaca39" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleoffutureminimumoperatingrentalincomeDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_145fdf97-d554-4eae-a1c5-fc9244e6fddd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_74348445-a2a1-4cf2-b51b-677cd866c25e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_145fdf97-d554-4eae-a1c5-fc9244e6fddd" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_74348445-a2a1-4cf2-b51b-677cd866c25e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_2fc4538e-3a5b-4efb-ba90-6dff5894e2bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_145fdf97-d554-4eae-a1c5-fc9244e6fddd" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_2fc4538e-3a5b-4efb-ba90-6dff5894e2bd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_7be1574c-5920-46e7-9542-f2f8fdc58eec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_145fdf97-d554-4eae-a1c5-fc9244e6fddd" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_7be1574c-5920-46e7-9542-f2f8fdc58eec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_ffc65eec-bd55-459f-a308-936a532be574" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_145fdf97-d554-4eae-a1c5-fc9244e6fddd" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_ffc65eec-bd55-459f-a308-936a532be574" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_d569fa76-401e-44ab-88b6-4c24859056c4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_145fdf97-d554-4eae-a1c5-fc9244e6fddd" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_d569fa76-401e-44ab-88b6-4c24859056c4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths_2fab079a-206f-45b7-afbb-39c033b9e4b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_145fdf97-d554-4eae-a1c5-fc9244e6fddd" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths_2fab079a-206f-45b7-afbb-39c033b9e4b4" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS" xlink:type="simple" xlink:href="tyl-20201231.xsd#EMPLOYEEBENEFITPLANS"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EMPLOYEEBENEFITPLANSAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#COMMITMENTSANDCONTINGENCIES"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATION"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUE"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUETables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUEDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUEAdditionalInformationDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDCOMMISSIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDCOMMISSIONS"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DEFERREDCOMMISSIONS" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDCOMMISSIONSDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUBSEQUENTEVENTS" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUBSEQUENTEVENTS"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SUBSEQUENTEVENTS" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUBSEQUENTEVENTSDetails"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunaudited"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunauditedTables"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail"/>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail" xlink:type="extended"/>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>8
<FILENAME>tyl-20201231_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:cb70be07-24b1-4aa6-9599-1da6bf66cbac,g:07fa3be8-7f1e-4f83-baed-fe8860b305ca-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/Cover" xlink:type="simple" xlink:href="tyl-20201231.xsd#Cover"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/Cover" xlink:type="extended" id="i4d76d36eae6149eb9a35ef4a18e44ecf_Cover"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended" id="i5757741b4cc9405e9a5b0ac44c8a1e59_ConsolidatedStatementsofComprehensiveIncome">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesAbstract_a72b4e03-95df-4d09-972a-418d1be672ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenuesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_RevenuesAbstract_a72b4e03-95df-4d09-972a-418d1be672ef" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a9d758f7-0a9f-4806-acc7-617cfb8f5a59" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_a72b4e03-95df-4d09-972a-418d1be672ef" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a9d758f7-0a9f-4806-acc7-617cfb8f5a59" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract_ae8eb632-308e-4142-8ef7-b555854604bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_CostOfRevenueAbstract_ae8eb632-308e-4142-8ef7-b555854604bb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_6f80e6fa-d224-4c08-92e4-6329eeee3b1e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ae8eb632-308e-4142-8ef7-b555854604bb" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_6f80e6fa-d224-4c08-92e4-6329eeee3b1e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_f81cec92-6eaf-483b-85e6-092303702d8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_GrossProfit_f81cec92-6eaf-483b-85e6-092303702d8b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_56bda08e-78db-45fc-8b4d-646ca6cac2f9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_56bda08e-78db-45fc-8b4d-646ca6cac2f9" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_0afc539e-a7ee-44c2-b5b9-7c8ab0fbdd73" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_0afc539e-a7ee-44c2-b5b9-7c8ab0fbdd73" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_a2addd15-e817-4628-99a5-bab4df6e9610" xlink:href="tyl-20201231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_a2addd15-e817-4628-99a5-bab4df6e9610" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_95bd1404-a725-495c-8f4b-b480812d1710" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_OperatingIncomeLoss_95bd1404-a725-495c-8f4b-b480812d1710" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_c7bc5092-5325-4f30-b19d-64cd0c1380da" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_c7bc5092-5325-4f30-b19d-64cd0c1380da" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_423d90c9-4e35-49e1-a802-f8f584dabeb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_423d90c9-4e35-49e1-a802-f8f584dabeb2" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_44c6fb04-3361-43f7-8823-0879e64b18a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_44c6fb04-3361-43f7-8823-0879e64b18a5" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_fefd6175-0f7d-46f1-9baf-014567fc9287" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_NetIncomeLoss_fefd6175-0f7d-46f1-9baf-014567fc9287" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_e3d82198-13aa-44f9-8c48-f6df7f7bbe37" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_EarningsPerShareAbstract_e3d82198-13aa-44f9-8c48-f6df7f7bbe37" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_b38b4a41-a671-4a4f-8d32-cc0295af6fe7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_e3d82198-13aa-44f9-8c48-f6df7f7bbe37" xlink:to="loc_us-gaap_EarningsPerShareBasic_b38b4a41-a671-4a4f-8d32-cc0295af6fe7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_ea157b21-d518-4756-9f7c-a7455e2aca8c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_e3d82198-13aa-44f9-8c48-f6df7f7bbe37" xlink:to="loc_us-gaap_EarningsPerShareDiluted_ea157b21-d518-4756-9f7c-a7455e2aca8c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_1a605a4d-50c3-46f8-8229-71557d935225" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_StatementTable_1a605a4d-50c3-46f8-8229-71557d935225" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1a605a4d-50c3-46f8-8229-71557d935225" xlink:to="loc_srt_ProductOrServiceAxis_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca" xlink:to="loc_srt_ProductsAndServicesDomain_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca" xlink:to="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareLicensesandRoyaltiesMember_d38d5073-414a-4203-baf5-d71befcae664" xlink:href="tyl-20201231.xsd#tyl_SoftwareLicensesandRoyaltiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_SoftwareLicensesandRoyaltiesMember_d38d5073-414a-4203-baf5-d71befcae664" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_f39f9da8-ab65-4fc4-ad42-6035e0765ba6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubscriptionAndCirculationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_f39f9da8-ab65-4fc4-ad42-6035e0765ba6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyServiceMember_422f851a-b201-4257-8a53-15e4fb13aa28" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TechnologyServiceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_us-gaap_TechnologyServiceMember_422f851a-b201-4257-8a53-15e4fb13aa28" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaintenanceMember_641e082d-7df9-4fb7-b76a-d5c6151537ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MaintenanceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_us-gaap_MaintenanceMember_641e082d-7df9-4fb7-b76a-d5c6151537ef" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AcquiredSoftwareMember_bf79da77-b7a8-49ce-bfb3-3af93cc80a8c" xlink:href="tyl-20201231.xsd#tyl_AcquiredSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_AcquiredSoftwareMember_bf79da77-b7a8-49ce-bfb3-3af93cc80a8c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_cc0dfc84-fee0-49e5-85d4-f786a016266e" xlink:href="tyl-20201231.xsd#tyl_SoftwareServicesMaintenanceandSubscriptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_cc0dfc84-fee0-49e5-85d4-f786a016266e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember_7de7b607-fa6d-4f37-bf5f-5890b5e9a473" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_AppraisalServicesMember_7de7b607-fa6d-4f37-bf5f-5890b5e9a473" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_HardwareandOtherMember_a9079645-cdc3-4d4e-aa1f-393994b1d0a3" xlink:href="tyl-20201231.xsd#tyl_HardwareandOtherMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_HardwareandOtherMember_a9079645-cdc3-4d4e-aa1f-393994b1d0a3" xlink:type="arc" order="7"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedBalanceSheets"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="extended" id="i2f1467adcfee42b9af4bfbea01d3da8e_ConsolidatedBalanceSheets"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedBalanceSheetsParenthetical"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended" id="i716246e2c6e740be8aa4d8e663c069a9_ConsolidatedBalanceSheetsParenthetical"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended" id="ib4b8c3d7a11a4729b447ef0522e359ec_ConsolidatedStatementsofCashFlows"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofShareholdersEquity"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity" xlink:type="extended" id="if9923705a9bb41448159d4ddcfac6484_ConsolidatedStatementsofShareholdersEquity">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_12d074ad-888f-4f99-9298-09807be8190a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_12d074ad-888f-4f99-9298-09807be8190a" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_db46a7eb-c74b-499c-87d0-675036934942" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockholdersEquity_db46a7eb-c74b-499c-87d0-675036934942" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued_ac28b5d0-f474-4704-9a9d-914824a68c1a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_SharesIssued_ac28b5d0-f474-4704-9a9d-914824a68c1a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_c00756fc-b654-4cb0-afe8-6b89238905fd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_NetIncomeLoss_c00756fc-b654-4cb0-afe8-6b89238905fd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_e4e3b4ba-299a-49d5-a0b6-b6e8e3e69359" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_e4e3b4ba-299a-49d5-a0b6-b6e8e3e69359" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_1b6c7087-e6da-4fd9-bc6a-e8ee755c1e1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_1b6c7087-e6da-4fd9-bc6a-e8ee755c1e1f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_fee64e51-453f-4890-9cd3-4ae56a54a57c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_fee64e51-453f-4890-9cd3-4ae56a54a57c" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7cb56a15-e051-482c-b258-f447732b9d3c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7cb56a15-e051-482c-b258-f447732b9d3c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_9b2e861a-84cc-4a64-b658-7200a929e814" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_9b2e861a-84cc-4a64-b658-7200a929e814" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_5330e7f3-0f0c-4c16-b783-c8de1794e172" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_5330e7f3-0f0c-4c16-b783-c8de1794e172" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_321e4c90-3660-4670-9636-929b0eabdb02" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_321e4c90-3660-4670-9636-929b0eabdb02" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_43999d10-2318-4d72-9998-8ff9b813bc08" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_43999d10-2318-4d72-9998-8ff9b813bc08" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_490d470b-d4c0-449d-ab5a-23c86fbbeda5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_490d470b-d4c0-449d-ab5a-23c86fbbeda5" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_3720b813-adcf-4858-a1c6-c7988a12d65f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued_5134cada-9bf1-491e-b4ae-776367c34e04" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesIssued"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingStandardsUpdateExtensibleList_6533763e-a9f3-4be4-a9fc-7faf27d667bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingStandardsUpdateExtensibleList"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_12d074ad-888f-4f99-9298-09807be8190a" xlink:to="loc_us-gaap_AccountingStandardsUpdateExtensibleList_6533763e-a9f3-4be4-a9fc-7faf27d667bf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_12d074ad-888f-4f99-9298-09807be8190a" xlink:to="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_1568b292-b8fa-4797-98b2-5f0d7930fefc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_1568b292-b8fa-4797-98b2-5f0d7930fefc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_1568b292-b8fa-4797-98b2-5f0d7930fefc_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_1568b292-b8fa-4797-98b2-5f0d7930fefc" xlink:to="loc_us-gaap_EquityComponentDomain_1568b292-b8fa-4797-98b2-5f0d7930fefc_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_1568b292-b8fa-4797-98b2-5f0d7930fefc" xlink:to="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_0d77c8e5-e091-4859-a37c-adabda760778" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_CommonStockMember_0d77c8e5-e091-4859-a37c-adabda760778" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_cae24689-129b-4de1-a31c-b2db763314fd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_cae24689-129b-4de1-a31c-b2db763314fd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_05cfe71c-8d9f-41b3-b627-14f72610f7bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_05cfe71c-8d9f-41b3-b627-14f72610f7bd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_edab2051-245d-4931-acb5-121dea0fc1d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_RetainedEarningsMember_edab2051-245d-4931-acb5-121dea0fc1d5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_63f0631b-4ce8-4e19-b48a-9b87727460fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_TreasuryStockMember_63f0631b-4ce8-4e19-b48a-9b87727460fe" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_6ea82c06-e47f-42e5-8639-71199aadf7bf" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_6ea82c06-e47f-42e5-8639-71199aadf7bf" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_6ea82c06-e47f-42e5-8639-71199aadf7bf_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_6ea82c06-e47f-42e5-8639-71199aadf7bf" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_6ea82c06-e47f-42e5-8639-71199aadf7bf_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_848af505-f469-41ab-a740-694e1f14d516" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_6ea82c06-e47f-42e5-8639-71199aadf7bf" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_848af505-f469-41ab-a740-694e1f14d516" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_7d89bb73-0131-4ab8-ade1-91356c49611e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_848af505-f469-41ab-a740-694e1f14d516" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_7d89bb73-0131-4ab8-ade1-91356c49611e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:type="extended" id="i4408efb534a34abc9b0c6792daadeec2_SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:type="extended" id="ibefbf46d8e4e49bf858df58956d456e5_SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables" xlink:type="extended" id="ia213c97109df47b7b04544a99d0754fc_SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails" xlink:type="extended" id="i76f3bfc4c5854592a0396312bde0c2c1_SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:href="tyl-20201231.xsd#tyl_AccountingPoliciesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecurringRevenuePercentageOfTotalRevenue_65e5ed56-6bc4-403b-845e-c212f1b611b9" xlink:href="tyl-20201231.xsd#tyl_RecurringRevenuePercentageOfTotalRevenue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RecurringRevenuePercentageOfTotalRevenue_65e5ed56-6bc4-403b-845e-c212f1b611b9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments_e6ac3d80-a53f-4884-8852-3f8c2fbc6953" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsAndShortTermInvestments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments_e6ac3d80-a53f-4884-8852-3f8c2fbc6953" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermLineOfCredit_d73cdc8a-ac1c-4873-b5ce-ab41fc80f256" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermLineOfCredit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_LongTermLineOfCredit_d73cdc8a-ac1c-4873-b5ce-ab41fc80f256" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e31a82bf-7013-4d33-b8c8-451e7065cf81" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e31a82bf-7013-4d33-b8c8-451e7065cf81" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumberOfWhollyOwnedSubsidiaries_d2cb94df-b029-4000-ae54-c7ac7f078e21" xlink:href="tyl-20201231.xsd#tyl_NumberOfWhollyOwnedSubsidiaries"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_NumberOfWhollyOwnedSubsidiaries_d2cb94df-b029-4000-ae54-c7ac7f078e21" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_b08be1be-3d2f-4dd8-874a-3fe494114a36" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_b08be1be-3d2f-4dd8-874a-3fe494114a36" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_be367ca0-c678-41b5-b4ee-38e5ed96396f" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerContractTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RevenueFromContractWithCustomerContractTerm_be367ca0-c678-41b5-b4ee-38e5ed96396f" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_fbe5f86b-5a4e-4aaf-a0c9-81109e4a70e1" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_fbe5f86b-5a4e-4aaf-a0c9-81109e4a70e1" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNet_7172a7cf-bfe8-4906-a3e8-f55b54908d8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_AccountsReceivableNet_7172a7cf-bfe8-4906-a3e8-f55b54908d8a" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_17dc7814-153e-4fa7-bfdf-8588ecf56665" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerPaymentTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_17dc7814-153e-4fa7-bfdf-8588ecf56665" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_25a9186c-8a17-4217-8204-e06aefc10793" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_25a9186c-8a17-4217-8204-e06aefc10793" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_272f096e-979d-4a39-a54a-db2c40cda9fd" xlink:href="tyl-20201231.xsd#tyl_SalesCommissionsAmortizationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_SalesCommissionsAmortizationPeriod_272f096e-979d-4a39-a54a-db2c40cda9fd" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SalesCommissionRenewalPeriod_7b871b3c-2ba4-46c2-ae46-69f66f4e45fd" xlink:href="tyl-20201231.xsd#tyl_SalesCommissionRenewalPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_SalesCommissionRenewalPeriod_7b871b3c-2ba4-46c2-ae46-69f66f4e45fd" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_3fcb3072-5f5b-453b-9ca5-0eebb4e90dbd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_3fcb3072-5f5b-453b-9ca5-0eebb4e90dbd" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_2eba848c-5e00-4bbb-a3ad-fb5f305e2a70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_2eba848c-5e00-4bbb-a3ad-fb5f305e2a70" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_b10c4159-b9b4-4fcd-97a0-13abbe0f232a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_b10c4159-b9b4-4fcd-97a0-13abbe0f232a" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationShareConversionRateShares_f88f5a1b-745f-4e0d-b2ab-27544dda70d2" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationShareConversionRateShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_ShareBasedCompensationShareConversionRateShares_f88f5a1b-745f-4e0d-b2ab-27544dda70d2" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_GoodwillAssessedForImpairment_b7cbb3d5-f691-479f-86fd-2f138e8a7e4f" xlink:href="tyl-20201231.xsd#tyl_GoodwillAssessedForImpairment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_GoodwillAssessedForImpairment_b7cbb3d5-f691-479f-86fd-2f138e8a7e4f" xlink:type="arc" order="17"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_PercentageOfTotalGoodwill_f78e1f68-6d58-4bda-a681-158caac232aa" xlink:href="tyl-20201231.xsd#tyl_PercentageOfTotalGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_PercentageOfTotalGoodwill_f78e1f68-6d58-4bda-a681-158caac232aa" xlink:type="arc" order="18"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_49e325c9-0830-4801-ad11-894b78c55d20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_GoodwillImpairmentLoss_49e325c9-0830-4801-ad11-894b78c55d20" xlink:type="arc" order="19"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_50c17201-cd53-45b7-84ec-56cc779be5b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_50c17201-cd53-45b7-84ec-56cc779be5b4" xlink:type="arc" order="20"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_608844fd-9aa4-451a-a22a-c03b3bfd7cd0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_608844fd-9aa4-451a-a22a-c03b3bfd7cd0" xlink:type="arc" order="21"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_632ee2df-f343-47a2-8096-32ecdf7b7810" xlink:href="tyl-20201231.xsd#tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_632ee2df-f343-47a2-8096-32ecdf7b7810" xlink:type="arc" order="22"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RemainingEstimatedEconomicLife_0620e9b9-9304-4127-82c0-c710c65520ba" xlink:href="tyl-20201231.xsd#tyl_RemainingEstimatedEconomicLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RemainingEstimatedEconomicLife_0620e9b9-9304-4127-82c0-c710c65520ba" xlink:type="arc" order="23"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_57125ca9-f0db-44bb-9061-df6599609930" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_57125ca9-f0db-44bb-9061-df6599609930" xlink:type="arc" order="24"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_e80e4a22-a9d5-44ed-82fe-8e3b60b2b03b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_e80e4a22-a9d5-44ed-82fe-8e3b60b2b03b" xlink:type="arc" order="25"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestReceivable_bbb98aa4-8a91-4f73-9ded-92db811e8dcf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_InterestReceivable_bbb98aa4-8a91-4f73-9ded-92db811e8dcf" xlink:type="arc" order="26"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_91fe49db-1f83-4688-a604-da8ea76b86a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_91fe49db-1f83-4688-a604-da8ea76b86a3" xlink:type="arc" order="27"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CostMethodInvestmentOwnershipPercentage_2b9116ea-b290-471e-ba7d-238dfafb7e45" xlink:href="tyl-20201231.xsd#tyl_CostMethodInvestmentOwnershipPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_CostMethodInvestmentOwnershipPercentage_2b9116ea-b290-471e-ba7d-238dfafb7e45" xlink:type="arc" order="28"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_bd0c4795-4099-4830-ad69-6f069adbd9f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_bd0c4795-4099-4830-ad69-6f069adbd9f7" xlink:type="arc" order="29"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5a35cf6c-3134-4855-9332-66c28a5f9685" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5a35cf6c-3134-4855-9332-66c28a5f9685" xlink:type="arc" order="30"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:href="tyl-20201231.xsd#tyl_AccountingPoliciesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_a00703ea-fd03-43a1-854b-b5da2dfa962c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_CreditFacilityAxis_a00703ea-fd03-43a1-854b-b5da2dfa962c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_a00703ea-fd03-43a1-854b-b5da2dfa962c_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_a00703ea-fd03-43a1-854b-b5da2dfa962c" xlink:to="loc_us-gaap_CreditFacilityDomain_a00703ea-fd03-43a1-854b-b5da2dfa962c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_eab3a157-6b96-4c15-9492-1e0bb80009f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_a00703ea-fd03-43a1-854b-b5da2dfa962c" xlink:to="loc_us-gaap_CreditFacilityDomain_eab3a157-6b96-4c15-9492-1e0bb80009f4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_b1501ab2-da35-4957-a881-41291fbdc6ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_eab3a157-6b96-4c15-9492-1e0bb80009f4" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_b1501ab2-da35-4957-a881-41291fbdc6ff" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_db45e221-4a39-484b-8155-5dae28cf71d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_DebtInstrumentAxis_db45e221-4a39-484b-8155-5dae28cf71d3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_db45e221-4a39-484b-8155-5dae28cf71d3_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_db45e221-4a39-484b-8155-5dae28cf71d3" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_db45e221-4a39-484b-8155-5dae28cf71d3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_dbd89c17-995a-46ee-a5be-a3ae2de198b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_db45e221-4a39-484b-8155-5dae28cf71d3" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_dbd89c17-995a-46ee-a5be-a3ae2de198b0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CreditAgreementMember_44b4e55c-c5d6-462f-94a9-93de05ee9c75" xlink:href="tyl-20201231.xsd#tyl_CreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_dbd89c17-995a-46ee-a5be-a3ae2de198b0" xlink:to="loc_tyl_CreditAgreementMember_44b4e55c-c5d6-462f-94a9-93de05ee9c75" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_f78fa82b-4865-441b-b59c-a4666f47cd99" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_srt_ProductOrServiceAxis_f78fa82b-4865-441b-b59c-a4666f47cd99" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_f78fa82b-4865-441b-b59c-a4666f47cd99_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_f78fa82b-4865-441b-b59c-a4666f47cd99" xlink:to="loc_srt_ProductsAndServicesDomain_f78fa82b-4865-441b-b59c-a4666f47cd99_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_74d34a94-3982-4837-a04a-4b1400efc5d2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_f78fa82b-4865-441b-b59c-a4666f47cd99" xlink:to="loc_srt_ProductsAndServicesDomain_74d34a94-3982-4837-a04a-4b1400efc5d2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_db470037-31c4-4c83-bf79-f9817e21dce8" xlink:href="tyl-20201231.xsd#tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_74d34a94-3982-4837-a04a-4b1400efc5d2" xlink:to="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_db470037-31c4-4c83-bf79-f9817e21dce8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember_235d85cb-76df-4e15-8e62-e69d45ee4af8" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_74d34a94-3982-4837-a04a-4b1400efc5d2" xlink:to="loc_tyl_AppraisalServicesMember_235d85cb-76df-4e15-8e62-e69d45ee4af8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesBillingStatusDomain_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReceivablesBillingStatusDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3" xlink:to="loc_us-gaap_ReceivablesBillingStatusDomain_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesBillingStatusDomain_ef9328bb-4bb4-4589-96cd-8ae329b39e7a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReceivablesBillingStatusDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3" xlink:to="loc_us-gaap_ReceivablesBillingStatusDomain_ef9328bb-4bb4-4589-96cd-8ae329b39e7a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledRevenuesMember_e5577603-5e4b-4a63-a297-18112333f50c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnbilledRevenuesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReceivablesBillingStatusDomain_ef9328bb-4bb4-4589-96cd-8ae329b39e7a" xlink:to="loc_us-gaap_UnbilledRevenuesMember_e5577603-5e4b-4a63-a297-18112333f50c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_b3516d75-ea82-45a7-9c44-73513f76341d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_b3516d75-ea82-45a7-9c44-73513f76341d" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivableTypeDomain_b3516d75-ea82-45a7-9c44-73513f76341d_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReceivableTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_b3516d75-ea82-45a7-9c44-73513f76341d" xlink:to="loc_us-gaap_ReceivableTypeDomain_b3516d75-ea82-45a7-9c44-73513f76341d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivableTypeDomain_4cdee742-f3e8-4581-af81-c4a76a6c09dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReceivableTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_b3516d75-ea82-45a7-9c44-73513f76341d" xlink:to="loc_us-gaap_ReceivableTypeDomain_4cdee742-f3e8-4581-af81-c4a76a6c09dc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RetentionReceivableMember_b0869973-2dc5-4a0b-8284-ac0db1c9d40a" xlink:href="tyl-20201231.xsd#tyl_RetentionReceivableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReceivableTypeDomain_4cdee742-f3e8-4581-af81-c4a76a6c09dc" xlink:to="loc_tyl_RetentionReceivableMember_b0869973-2dc5-4a0b-8284-ac0db1c9d40a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_354f6821-2be0-4f1f-96bb-c5ac2724b2ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_AwardTypeAxis_354f6821-2be0-4f1f-96bb-c5ac2724b2ec" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_354f6821-2be0-4f1f-96bb-c5ac2724b2ec_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_354f6821-2be0-4f1f-96bb-c5ac2724b2ec" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_354f6821-2be0-4f1f-96bb-c5ac2724b2ec_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_354f6821-2be0-4f1f-96bb-c5ac2724b2ec" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_4d900d91-cf83-4386-9d82-4c2614325b58" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:to="loc_us-gaap_EmployeeStockOptionMember_4d900d91-cf83-4386-9d82-4c2614325b58" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_fc61bdc4-ae85-432a-a078-968c8253bee8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_fc61bdc4-ae85-432a-a078-968c8253bee8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_1fc109ec-d0be-4399-9eb8-2decd6ae0091" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:to="loc_us-gaap_PerformanceSharesMember_1fc109ec-d0be-4399-9eb8-2decd6ae0091" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_fb08961e-8ebd-4851-9726-37150eeb03ed" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_srt_RangeAxis_fb08961e-8ebd-4851-9726-37150eeb03ed" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_fb08961e-8ebd-4851-9726-37150eeb03ed_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_fb08961e-8ebd-4851-9726-37150eeb03ed" xlink:to="loc_srt_RangeMember_fb08961e-8ebd-4851-9726-37150eeb03ed_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_041d22f7-baf2-45e7-963d-ebaf63b9ccd2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_fb08961e-8ebd-4851-9726-37150eeb03ed" xlink:to="loc_srt_RangeMember_041d22f7-baf2-45e7-963d-ebaf63b9ccd2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_2d8acaf9-3a53-4cdc-8841-dcce47dce98f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_041d22f7-baf2-45e7-963d-ebaf63b9ccd2" xlink:to="loc_srt_MinimumMember_2d8acaf9-3a53-4cdc-8841-dcce47dce98f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_22201e02-4944-47a3-851a-cf6135094469" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_041d22f7-baf2-45e7-963d-ebaf63b9ccd2" xlink:to="loc_srt_MaximumMember_22201e02-4944-47a3-851a-cf6135094469" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_20281229-475d-4bf4-ba37-86064e724b5e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_StatementClassOfStockAxis_20281229-475d-4bf4-ba37-86064e724b5e" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_20281229-475d-4bf4-ba37-86064e724b5e_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_20281229-475d-4bf4-ba37-86064e724b5e" xlink:to="loc_us-gaap_ClassOfStockDomain_20281229-475d-4bf4-ba37-86064e724b5e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_540053b5-50c7-46f6-aaa1-fb75b735613d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_20281229-475d-4bf4-ba37-86064e724b5e" xlink:to="loc_us-gaap_ClassOfStockDomain_540053b5-50c7-46f6-aaa1-fb75b735613d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_2b47f05e-3fb8-452e-a49f-c5c5a0f55eba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_540053b5-50c7-46f6-aaa1-fb75b735613d" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_2b47f05e-3fb8-452e-a49f-c5c5a0f55eba" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_ae499d40-1fda-4016-8447-fba18992aead" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_dei_LegalEntityAxis_ae499d40-1fda-4016-8447-fba18992aead" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_ae499d40-1fda-4016-8447-fba18992aead_default" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_ae499d40-1fda-4016-8447-fba18992aead" xlink:to="loc_dei_EntityDomain_ae499d40-1fda-4016-8447-fba18992aead_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_9d5b3a00-4e95-40af-b741-b4c567a1f1a0" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_ae499d40-1fda-4016-8447-fba18992aead" xlink:to="loc_dei_EntityDomain_9d5b3a00-4e95-40af-b741-b4c567a1f1a0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecordHoldingsPtyLimitedMember_0299c11e-4c3e-4c53-9d45-601f96afc3b7" xlink:href="tyl-20201231.xsd#tyl_RecordHoldingsPtyLimitedMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_9d5b3a00-4e95-40af-b741-b4c567a1f1a0" xlink:to="loc_tyl_RecordHoldingsPtyLimitedMember_0299c11e-4c3e-4c53-9d45-601f96afc3b7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_491d3bf1-2619-46a2-8d52-16c9e1ac393e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_491d3bf1-2619-46a2-8d52-16c9e1ac393e" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_491d3bf1-2619-46a2-8d52-16c9e1ac393e_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_491d3bf1-2619-46a2-8d52-16c9e1ac393e" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_491d3bf1-2619-46a2-8d52-16c9e1ac393e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_f199d761-cced-441a-a3de-ec9b888de04c" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_491d3bf1-2619-46a2-8d52-16c9e1ac393e" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_f199d761-cced-441a-a3de-ec9b888de04c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BFTRLLCMember_2dd2287f-ebf3-47ec-9479-608bf81180b3" xlink:href="tyl-20201231.xsd#tyl_BFTRLLCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_f199d761-cced-441a-a3de-ec9b888de04c" xlink:to="loc_tyl_BFTRLLCMember_2dd2287f-ebf3-47ec-9479-608bf81180b3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReportingUnitAxis_a366f86d-3a6d-406f-9879-ff761c97c48d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReportingUnitAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_ReportingUnitAxis_a366f86d-3a6d-406f-9879-ff761c97c48d" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReportingUnitDomain_a366f86d-3a6d-406f-9879-ff761c97c48d_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReportingUnitDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ReportingUnitAxis_a366f86d-3a6d-406f-9879-ff761c97c48d" xlink:to="loc_us-gaap_ReportingUnitDomain_a366f86d-3a6d-406f-9879-ff761c97c48d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReportingUnitDomain_12ff7b00-a4f9-4b62-bf4c-b07926d445cb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReportingUnitDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ReportingUnitAxis_a366f86d-3a6d-406f-9879-ff761c97c48d" xlink:to="loc_us-gaap_ReportingUnitDomain_12ff7b00-a4f9-4b62-bf4c-b07926d445cb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DataAndInsightMember_10b8b7ac-bfbc-4337-a285-43cafa233a35" xlink:href="tyl-20201231.xsd#tyl_DataAndInsightMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReportingUnitDomain_12ff7b00-a4f9-4b62-bf4c-b07926d445cb" xlink:to="loc_tyl_DataAndInsightMember_10b8b7ac-bfbc-4337-a285-43cafa233a35" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember_65b9ea09-bb0a-4449-823f-9e3e27c23a96" xlink:href="tyl-20201231.xsd#tyl_CaseManagementBusinessProcessManagementDataAndInsightMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReportingUnitDomain_12ff7b00-a4f9-4b62-bf4c-b07926d445cb" xlink:to="loc_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember_65b9ea09-bb0a-4449-823f-9e3e27c23a96" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails" xlink:type="extended" id="ic7251586019f46f5a6da12c52ed9aba6_SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACQUISITIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACQUISITIONS"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ACQUISITIONS" xlink:type="extended" id="i840d24fd1d9e42d0b917a230bef2a6bd_ACQUISITIONS"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACQUISITIONSNarrativeDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail" xlink:type="extended" id="i15cf5158b35b4647b07b78e74fa8f8a6_ACQUISITIONSNarrativeDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_d01ae629-ca88-4b1c-bd4e-923bb3090f5d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_d01ae629-ca88-4b1c-bd4e-923bb3090f5d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles_a7fe1527-10f6-4878-8b00-fc9b227e8ff6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles_a7fe1527-10f6-4878-8b00-fc9b227e8ff6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_10f37113-9687-4b16-9968-dbcc08b91f72" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_10f37113-9687-4b16-9968-dbcc08b91f72" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3d168743-6a5d-4eee-9209-b93a6edc0f32" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3d168743-6a5d-4eee-9209-b93a6edc0f32" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_5ad1d061-8ae2-4bb6-a605-b4e033adc0b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_5ad1d061-8ae2-4bb6-a605-b4e033adc0b6" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_b5f40cec-624f-4282-b227-1dfd98228101" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_b5f40cec-624f-4282-b227-1dfd98228101" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_7130e6b1-669a-4b5c-a404-a8b774f1ee87" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_7130e6b1-669a-4b5c-a404-a8b774f1ee87" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_318f7bfc-ef87-447c-ab4a-4cb745db1526" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_318f7bfc-ef87-447c-ab4a-4cb745db1526" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_b29e6524-7d84-43d7-96dc-df5091477c08" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_b29e6524-7d84-43d7-96dc-df5091477c08" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_6f59e55f-c4fd-4d03-8884-5201bfb268de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_b29e6524-7d84-43d7-96dc-df5091477c08" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_6f59e55f-c4fd-4d03-8884-5201bfb268de" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6f59e55f-c4fd-4d03-8884-5201bfb268de_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_6f59e55f-c4fd-4d03-8884-5201bfb268de" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6f59e55f-c4fd-4d03-8884-5201bfb268de_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_6f59e55f-c4fd-4d03-8884-5201bfb268de" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CourthouseTechnologiesLtdMember_eaa286dd-497d-47fe-b370-30bd248d3f2a" xlink:href="tyl-20201231.xsd#tyl_CourthouseTechnologiesLtdMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:to="loc_tyl_CourthouseTechnologiesLtdMember_eaa286dd-497d-47fe-b370-30bd248d3f2a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_3d1a3898-44cb-4b6f-b862-84797309edee" xlink:href="tyl-20201231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_3d1a3898-44cb-4b6f-b862-84797309edee" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CivicLLCMember_39f98c85-950b-4878-8c94-703eaa0c18b5" xlink:href="tyl-20201231.xsd#tyl_CivicLLCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:to="loc_tyl_CivicLLCMember_39f98c85-950b-4878-8c94-703eaa0c18b5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MicroPactAndMyCivicMember_d888db0c-1e8f-4945-a34b-6eb9f744e9ff" xlink:href="tyl-20201231.xsd#tyl_MicroPactAndMyCivicMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:to="loc_tyl_MicroPactAndMyCivicMember_d888db0c-1e8f-4945-a34b-6eb9f744e9ff" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNET"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET" xlink:type="extended" id="idbc8b5b8a03c49639c0e96213e3c8609_PROPERTYANDEQUIPMENTNET"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETTables" xlink:type="extended" id="ib4c554055d3e4a5580e465b23499fc2e_PROPERTYANDEQUIPMENTNETTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail" xlink:type="extended" id="id6b6289690d7414584e0b4f1872b8ec3_PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_f6981343-6e35-4fac-92ca-8159c95ae34b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_f6981343-6e35-4fac-92ca-8159c95ae34b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_61709481-8463-463a-8091-be4d6e89623b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_61709481-8463-463a-8091-be4d6e89623b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_e3dcd165-0613-4323-b658-39576c8759e4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_e3dcd165-0613-4323-b658-39576c8759e4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_5ac6d584-bde4-40e6-8016-1b17d6802bcf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_5ac6d584-bde4-40e6-8016-1b17d6802bcf" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e59db81a-b1fc-4998-ba75-2aeecd481daa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e59db81a-b1fc-4998-ba75-2aeecd481daa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_e59db81a-b1fc-4998-ba75-2aeecd481daa_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e59db81a-b1fc-4998-ba75-2aeecd481daa" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_e59db81a-b1fc-4998-ba75-2aeecd481daa_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e59db81a-b1fc-4998-ba75-2aeecd481daa" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember_1f40bfad-bb65-4493-8da8-ffb271e583be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LandMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_us-gaap_LandMember_1f40bfad-bb65-4493-8da8-ffb271e583be" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BuildingAndLeaseholdImprovementsMember_c5e4ce2d-4dbd-49e8-9292-d8bd71229ce1" xlink:href="tyl-20201231.xsd#tyl_BuildingAndLeaseholdImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_tyl_BuildingAndLeaseholdImprovementsMember_c5e4ce2d-4dbd-49e8-9292-d8bd71229ce1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_fcc7ca3b-86b2-4d3e-8e7f-3f532aef0889" xlink:href="tyl-20201231.xsd#tyl_ComputerEquipmentAndPurchasedSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_fcc7ca3b-86b2-4d3e-8e7f-3f532aef0889" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_d93eca22-1f54-4e56-a336-ac5f5b03d985" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_d93eca22-1f54-4e56-a336-ac5f5b03d985" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransportationEquipmentMember_48dfef41-8d35-45e7-892a-a2098883f0c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransportationEquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_us-gaap_TransportationEquipmentMember_48dfef41-8d35-45e7-892a-a2098883f0c1" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_899e7481-f7c1-42fc-8f9c-0bb990405610" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:to="loc_srt_RangeAxis_899e7481-f7c1-42fc-8f9c-0bb990405610" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_899e7481-f7c1-42fc-8f9c-0bb990405610_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_899e7481-f7c1-42fc-8f9c-0bb990405610" xlink:to="loc_srt_RangeMember_899e7481-f7c1-42fc-8f9c-0bb990405610_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_d607eaa2-f0c2-4b27-97e0-8bde5cd344f3" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_899e7481-f7c1-42fc-8f9c-0bb990405610" xlink:to="loc_srt_RangeMember_d607eaa2-f0c2-4b27-97e0-8bde5cd344f3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_dead9ca0-9a9f-4fc6-8465-04449ddc08b8" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_d607eaa2-f0c2-4b27-97e0-8bde5cd344f3" xlink:to="loc_srt_MinimumMember_dead9ca0-9a9f-4fc6-8465-04449ddc08b8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_62c2a61c-ed2a-4bc1-836e-1c83e172ef08" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_d607eaa2-f0c2-4b27-97e0-8bde5cd344f3" xlink:to="loc_srt_MaximumMember_62c2a61c-ed2a-4bc1-836e-1c83e172ef08" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail" xlink:type="extended" id="i632cb8e965f14c2eae5d9a4728651e47_PROPERTYANDEQUIPMENTNETAdditionalInformationDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETS"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS" xlink:type="extended" id="iad52538aeba74848a7f76afb70985e51_GOODWILLANDOTHERINTANGIBLEASSETS"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables" xlink:type="extended" id="i8a5334aea10240399e45efd1385bd064_GOODWILLANDOTHERINTANGIBLEASSETSTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail" xlink:type="extended" id="i8a17b7a73f4d419199869fb84286a153_GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_9ac64716-df57-4299-b0fc-ef88384eb933" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_9ac64716-df57-4299-b0fc-ef88384eb933" xlink:to="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_a8beec07-0f06-42ca-bf7f-6ab8334f100c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:to="loc_us-gaap_Goodwill_a8beec07-0f06-42ca-bf7f-6ab8334f100c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_0e5cb26c-8424-4c38-b9d5-9e4a1be8e05a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_0e5cb26c-8424-4c38-b9d5-9e4a1be8e05a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_20f5d78e-91ed-4877-a6fb-2acb81961e51" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_20f5d78e-91ed-4877-a6fb-2acb81961e51" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_d2ec6a8e-e258-4639-b4f8-e849760c7db9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_GoodwillLineItems_9ac64716-df57-4299-b0fc-ef88384eb933" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_6a6afd77-81fc-4d29-9bc2-da3f00177208" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_6a6afd77-81fc-4d29-9bc2-da3f00177208" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_6a6afd77-81fc-4d29-9bc2-da3f00177208_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_6a6afd77-81fc-4d29-9bc2-da3f00177208" xlink:to="loc_us-gaap_SegmentDomain_6a6afd77-81fc-4d29-9bc2-da3f00177208_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_05930b0b-f487-4bcb-96b1-fc3a6db8c879" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_6a6afd77-81fc-4d29-9bc2-da3f00177208" xlink:to="loc_us-gaap_SegmentDomain_05930b0b-f487-4bcb-96b1-fc3a6db8c879" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_0043eee8-1214-4327-846a-2f0ce90742f4" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_05930b0b-f487-4bcb-96b1-fc3a6db8c879" xlink:to="loc_tyl_EnterpriseSoftwareMember_0043eee8-1214-4327-846a-2f0ce90742f4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_f4902427-4185-4c19-bc94-c9615cc8fc8b" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_05930b0b-f487-4bcb-96b1-fc3a6db8c879" xlink:to="loc_tyl_AppraisalAndTaxMember_f4902427-4185-4c19-bc94-c9615cc8fc8b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_79206407-969e-4e7c-98b8-e1034abc073b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_79206407-969e-4e7c-98b8-e1034abc073b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_79206407-969e-4e7c-98b8-e1034abc073b_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_79206407-969e-4e7c-98b8-e1034abc073b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_79206407-969e-4e7c-98b8-e1034abc073b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_79206407-969e-4e7c-98b8-e1034abc073b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_424eeda8-a0d8-454b-b36e-995025ad73d9" xlink:href="tyl-20201231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_424eeda8-a0d8-454b-b36e-995025ad73d9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_d3e2a766-763c-46bf-a896-712973ca5724" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:to="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_d3e2a766-763c-46bf-a896-712973ca5724" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CourthouseTechnologiesLtdMember_71e7e566-3594-47f5-9c94-38555baa1fdd" xlink:href="tyl-20201231.xsd#tyl_CourthouseTechnologiesLtdMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:to="loc_tyl_CourthouseTechnologiesLtdMember_71e7e566-3594-47f5-9c94-38555baa1fdd" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail" xlink:type="extended" id="i5191b48962ab46e0b9c7d0fbf7a95ffd_GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_0033152e-4390-406f-a764-45f999597150" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_0033152e-4390-406f-a764-45f999597150" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_0480657b-f939-4bd6-bc81-90890510db17" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_0480657b-f939-4bd6-bc81-90890510db17" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f8c4d1ff-b00f-4c61-996f-16f10e7328a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f8c4d1ff-b00f-4c61-996f-16f10e7328a7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_70d83af9-f3d2-493d-8fd8-bf3120d86285" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_70d83af9-f3d2-493d-8fd8-bf3120d86285" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_91f1a301-ce09-486a-aa71-8715d25b0e0b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_0033152e-4390-406f-a764-45f999597150" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_91f1a301-ce09-486a-aa71-8715d25b0e0b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_3bf45b16-3c60-4c09-abc7-663fffad1fb0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_91f1a301-ce09-486a-aa71-8715d25b0e0b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_3bf45b16-3c60-4c09-abc7-663fffad1fb0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_3bf45b16-3c60-4c09-abc7-663fffad1fb0_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_3bf45b16-3c60-4c09-abc7-663fffad1fb0" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_3bf45b16-3c60-4c09-abc7-663fffad1fb0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_3bf45b16-3c60-4c09-abc7-663fffad1fb0" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_bf58740b-a287-44d0-9260-f93278811d79" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_bf58740b-a287-44d0-9260-f93278811d79" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareAcquiredMember_c0e1539d-38cf-4be2-9975-d4f6144e1c50" xlink:href="tyl-20201231.xsd#tyl_SoftwareAcquiredMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_tyl_SoftwareAcquiredMember_c0e1539d-38cf-4be2-9975-d4f6144e1c50" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_3520ba38-0007-43b4-99b3-5b02691e640d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_us-gaap_TradeNamesMember_3520ba38-0007-43b4-99b3-5b02691e640d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_2c0315b5-f8ac-42b4-8e70-a63fa30db219" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareDevelopmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_us-gaap_SoftwareDevelopmentMember_2c0315b5-f8ac-42b4-8e70-a63fa30db219" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_007e957e-bbbd-4b28-9734-0baff57b074d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_007e957e-bbbd-4b28-9734-0baff57b074d" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail" xlink:type="extended" id="i5c5a6abccc0e4b44900fff49f4f0ee4b_GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_96ca430e-dc70-417f-af95-e6a7bcaa7033" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_96ca430e-dc70-417f-af95-e6a7bcaa7033" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_f180c406-076b-4462-95cd-861ae9bbf735" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_f180c406-076b-4462-95cd-861ae9bbf735" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_00ecd05d-cc3d-4e39-8353-73077be7e28e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_00ecd05d-cc3d-4e39-8353-73077be7e28e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_d3e73dbb-0843-436c-8599-bd1cf4b5942d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_d3e73dbb-0843-436c-8599-bd1cf4b5942d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_733ca009-d52f-475f-985a-187dead1d903" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_733ca009-d52f-475f-985a-187dead1d903" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_1cd76381-f38e-41d0-8e02-a136930980c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_1cd76381-f38e-41d0-8e02-a136930980c6" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_73b10b9f-b4b1-4bfe-a36c-e3e385938346" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_73b10b9f-b4b1-4bfe-a36c-e3e385938346" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_d9e3878d-5d0f-447b-b573-3e9ad664a579" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross_d9e3878d-5d0f-447b-b573-3e9ad664a579" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_a4bd6e57-dc23-44af-a9f9-f3a8bc9d3809" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_a4bd6e57-dc23-44af-a9f9-f3a8bc9d3809" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18242625-b7c7-4d47-962d-eacbd044a2f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_a4bd6e57-dc23-44af-a9f9-f3a8bc9d3809" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18242625-b7c7-4d47-962d-eacbd044a2f3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_18242625-b7c7-4d47-962d-eacbd044a2f3_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18242625-b7c7-4d47-962d-eacbd044a2f3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_18242625-b7c7-4d47-962d-eacbd044a2f3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_af2bccbe-460a-4f68-8757-7dc031231583" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18242625-b7c7-4d47-962d-eacbd044a2f3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_af2bccbe-460a-4f68-8757-7dc031231583" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_b3673033-98f0-446d-9a40-d0ab05a348fa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_af2bccbe-460a-4f68-8757-7dc031231583" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_b3673033-98f0-446d-9a40-d0ab05a348fa" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail" xlink:type="extended" id="i930a636fde7b41a3aa41400caaacdde8_GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_6bafb2bf-7c8b-4ea3-ad8e-f6e9d489ac27" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_Goodwill_6bafb2bf-7c8b-4ea3-ad8e-f6e9d489ac27" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_bf71a373-5944-4b89-bba6-7c498e848d5c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_bf71a373-5944-4b89-bba6-7c498e848d5c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_bee960dd-5e41-4988-b03e-4d24466b55be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_bee960dd-5e41-4988-b03e-4d24466b55be" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_472c786c-409f-4246-a0ab-d1fbcef3995d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_472c786c-409f-4246-a0ab-d1fbcef3995d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_7e511993-d082-45a5-99c4-e0894fecfac6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_7e511993-d082-45a5-99c4-e0894fecfac6" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_7e511993-d082-45a5-99c4-e0894fecfac6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_86abded6-0aab-4665-9f81-f0415e595c19" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_86abded6-0aab-4665-9f81-f0415e595c19" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareAcquiredMember_03b9536f-e4f0-440b-9933-c0847ee1b2fa" xlink:href="tyl-20201231.xsd#tyl_SoftwareAcquiredMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_tyl_SoftwareAcquiredMember_03b9536f-e4f0-440b-9933-c0847ee1b2fa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_4c7bff68-86c9-45d9-a0ce-7406e6dd5e7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_us-gaap_TradeNamesMember_4c7bff68-86c9-45d9-a0ce-7406e6dd5e7b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_91ae1b33-0f1a-43b4-83f4-479cc884b667" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareDevelopmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_us-gaap_SoftwareDevelopmentMember_91ae1b33-0f1a-43b4-83f4-479cc884b667" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_39a2208f-51a6-4395-84cf-671ff0c09214" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_39a2208f-51a6-4395-84cf-671ff0c09214" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail" xlink:type="extended" id="i518f314dda1347a888bb0248059a5c30_GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIES"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIES" xlink:type="extended" id="i60f269cbe5454be688a7414a9a0c1940_ACCRUEDLIABILITIES"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIESTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIESTables" xlink:type="extended" id="ia0873a938d414fecb81a18e527237074_ACCRUEDLIABILITIESTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIESDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail" xlink:type="extended" id="i85d85463ae54495bb91a83a49800c7e1_ACCRUEDLIABILITIESDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT" xlink:type="simple" xlink:href="tyl-20201231.xsd#REVOLVINGLINEOFCREDIT"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT" xlink:type="extended" id="i8533f549b70a41c3bd064cf35a0dd5ff_REVOLVINGLINEOFCREDIT"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#REVOLVINGLINEOFCREDITDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail" xlink:type="extended" id="i81231e1e362342819ae72530f3588181_REVOLVINGLINEOFCREDITDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_d36b4b29-2501-479e-badc-2ba1ba571515" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_d36b4b29-2501-479e-badc-2ba1ba571515" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_ce20ef28-a752-479e-9752-2d6015e78ab7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_ce20ef28-a752-479e-9752-2d6015e78ab7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1ba83a31-f7d5-49d2-9c79-a77c4765bd8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1ba83a31-f7d5-49d2-9c79-a77c4765bd8b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_e0d68dc6-5a27-401e-a7b9-4cf296369cab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_e0d68dc6-5a27-401e-a7b9-4cf296369cab" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermLineOfCredit_4a61a5bd-f232-4137-919c-6db582e237d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermLineOfCredit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LongTermLineOfCredit_4a61a5bd-f232-4137-919c-6db582e237d8" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_ccd0e0d3-756d-401a-94f1-44a430a29939" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_ccd0e0d3-756d-401a-94f1-44a430a29939" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LettersOfCreditOutstandingAmount_5fa822fe-94d0-4174-ad4b-cebd3e0717ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LettersOfCreditOutstandingAmount_5fa822fe-94d0-4174-ad4b-cebd3e0717ce" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet_9875f208-0d14-42f5-b693-8bfbf7e1d2de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestPaidNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_InterestPaidNet_9875f208-0d14-42f5-b693-8bfbf7e1d2de" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_143c8e7d-2563-4f96-9291-1c793ce59933" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_ShortTermDebtTypeAxis_143c8e7d-2563-4f96-9291-1c793ce59933" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_143c8e7d-2563-4f96-9291-1c793ce59933_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_143c8e7d-2563-4f96-9291-1c793ce59933" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_143c8e7d-2563-4f96-9291-1c793ce59933_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_7e0ade7a-43f6-4dbd-8971-76294512d16d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_143c8e7d-2563-4f96-9291-1c793ce59933" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_7e0ade7a-43f6-4dbd-8971-76294512d16d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_d8cb8182-c4d5-44d8-9afa-b804442bef2a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LetterOfCreditMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_7e0ade7a-43f6-4dbd-8971-76294512d16d" xlink:to="loc_us-gaap_LetterOfCreditMember_d8cb8182-c4d5-44d8-9afa-b804442bef2a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_16879fcd-4748-4e33-9c71-8833b72eb8c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_CreditFacilityAxis_16879fcd-4748-4e33-9c71-8833b72eb8c1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_16879fcd-4748-4e33-9c71-8833b72eb8c1_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_16879fcd-4748-4e33-9c71-8833b72eb8c1" xlink:to="loc_us-gaap_CreditFacilityDomain_16879fcd-4748-4e33-9c71-8833b72eb8c1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_6fea799b-4373-4cb3-a925-80c261dee557" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_16879fcd-4748-4e33-9c71-8833b72eb8c1" xlink:to="loc_us-gaap_CreditFacilityDomain_6fea799b-4373-4cb3-a925-80c261dee557" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_5f1b3beb-80bb-4f0c-a0b8-fbc0154a6b9f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_6fea799b-4373-4cb3-a925-80c261dee557" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_5f1b3beb-80bb-4f0c-a0b8-fbc0154a6b9f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_9902714f-f4c8-4e76-87d0-de9c665f0ef4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_DebtInstrumentAxis_9902714f-f4c8-4e76-87d0-de9c665f0ef4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_9902714f-f4c8-4e76-87d0-de9c665f0ef4_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_9902714f-f4c8-4e76-87d0-de9c665f0ef4" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_9902714f-f4c8-4e76-87d0-de9c665f0ef4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_29d0861b-beba-43eb-b896-0e502a1c3c38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_9902714f-f4c8-4e76-87d0-de9c665f0ef4" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_29d0861b-beba-43eb-b896-0e502a1c3c38" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CreditAgreementMember_624fcd65-70bd-4cc5-aa8b-1f79af035271" xlink:href="tyl-20201231.xsd#tyl_CreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_29d0861b-beba-43eb-b896-0e502a1c3c38" xlink:to="loc_tyl_CreditAgreementMember_624fcd65-70bd-4cc5-aa8b-1f79af035271" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_312da231-3989-428d-9cdd-e368c02d3d5b" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_srt_RangeAxis_312da231-3989-428d-9cdd-e368c02d3d5b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_312da231-3989-428d-9cdd-e368c02d3d5b_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_312da231-3989-428d-9cdd-e368c02d3d5b" xlink:to="loc_srt_RangeMember_312da231-3989-428d-9cdd-e368c02d3d5b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_457450d2-848c-47d2-aa11-668bd3d21886" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_312da231-3989-428d-9cdd-e368c02d3d5b" xlink:to="loc_srt_RangeMember_457450d2-848c-47d2-aa11-668bd3d21886" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_cec3b9e8-9d69-4dd7-9679-0957fa961af7" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_457450d2-848c-47d2-aa11-668bd3d21886" xlink:to="loc_srt_MinimumMember_cec3b9e8-9d69-4dd7-9679-0957fa961af7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_94c33f00-e1fb-4eca-b3fa-6c6bf6fe2529" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_457450d2-848c-47d2-aa11-668bd3d21886" xlink:to="loc_srt_MaximumMember_94c33f00-e1fb-4eca-b3fa-6c6bf6fe2529" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_4901f23d-b075-4087-984e-34b1ba96b5b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_VariableRateAxis_4901f23d-b075-4087-984e-34b1ba96b5b9" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_4901f23d-b075-4087-984e-34b1ba96b5b9_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VariableRateAxis_4901f23d-b075-4087-984e-34b1ba96b5b9" xlink:to="loc_us-gaap_VariableRateDomain_4901f23d-b075-4087-984e-34b1ba96b5b9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_6f32a320-bb79-4c82-a455-fa3424c51081" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VariableRateAxis_4901f23d-b075-4087-984e-34b1ba96b5b9" xlink:to="loc_us-gaap_VariableRateDomain_6f32a320-bb79-4c82-a455-fa3424c51081" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrimeRateMember_268ff13c-bb7f-4b6e-b81a-aeb73314f3c9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrimeRateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_6f32a320-bb79-4c82-a455-fa3424c51081" xlink:to="loc_us-gaap_PrimeRateMember_268ff13c-bb7f-4b6e-b81a-aeb73314f3c9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_4d4612e8-0bec-40e7-b106-84962b00e3c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_6f32a320-bb79-4c82-a455-fa3424c51081" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_4d4612e8-0bec-40e7-b106-84962b00e3c2" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAX" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAX"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/INCOMETAX" xlink:type="extended" id="i616fccb251c741d3949a6274e04459a1_INCOMETAX"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/INCOMETAXTables" xlink:type="extended" id="i591f44f834c6441a9eda17d5c80e1f68_INCOMETAXTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail" xlink:type="extended" id="i0e7b98d6ffed4ec9a00a1559a0fd50ae_INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail" xlink:type="extended" id="ifdfd936e89a2410992a6ad3dacdd4971_INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail" xlink:type="extended" id="i83341923504241ce95aa6d9d75505bb8_INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail" xlink:type="extended" id="i495f2a3d66cd44d7a5cc273037d6d2df_INCOMETAXAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NetOperatingLossCarryback_3e07068b-3154-4335-8ccd-90db218809a6" xlink:href="tyl-20201231.xsd#tyl_NetOperatingLossCarryback"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_tyl_NetOperatingLossCarryback_3e07068b-3154-4335-8ccd-90db218809a6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_76e0f7e6-1799-44a1-82a3-1241307f6aac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_OperatingLossCarryforwards_76e0f7e6-1799-44a1-82a3-1241307f6aac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount_f3de2a92-55c9-4295-a60c-c5792cf31c99" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_TaxCreditCarryforwardAmount_f3de2a92-55c9-4295-a60c-c5792cf31c99" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_7ce06553-540b-434a-acec-ac33294e94d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_7ce06553-540b-434a-acec-ac33294e94d1" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_c92843ab-4e9e-4b3e-abca-170669ac4fd5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_c92843ab-4e9e-4b3e-abca-170669ac4fd5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_07e3073f-eb29-41c5-b21c-403831ebdbf2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_07e3073f-eb29-41c5-b21c-403831ebdbf2" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_9d5e4bcb-b25f-469c-a7a1-f136765d17c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_07e3073f-eb29-41c5-b21c-403831ebdbf2" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_9d5e4bcb-b25f-469c-a7a1-f136765d17c1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_9d5e4bcb-b25f-469c-a7a1-f136765d17c1_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_9d5e4bcb-b25f-469c-a7a1-f136765d17c1" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_9d5e4bcb-b25f-469c-a7a1-f136765d17c1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_79298f1d-d787-483c-b656-86ddc164961e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_9d5e4bcb-b25f-469c-a7a1-f136765d17c1" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_79298f1d-d787-483c-b656-86ddc164961e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_c5216db8-0ac5-42a1-8829-ef478f7b23dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DomesticCountryMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_79298f1d-d787-483c-b656-86ddc164961e" xlink:to="loc_us-gaap_DomesticCountryMember_c5216db8-0ac5-42a1-8829-ef478f7b23dd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_99af80a3-dfa9-4010-a702-8acc11c9b4ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_79298f1d-d787-483c-b656-86ddc164961e" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_99af80a3-dfa9-4010-a702-8acc11c9b4ff" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITY" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITY"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITY" xlink:type="extended" id="ia225b5d16c3a4285be84dd5a69ac79e9_SHAREHOLDERSEQUITY"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables" xlink:type="extended" id="i1724fc6eb2e543f1ae7d9da8a58bfc11_SHAREHOLDERSEQUITYTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail" xlink:type="extended" id="ic28fd31c245f4083be3d24f340d7973c_SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail" xlink:type="extended" id="ia48298ed8c034622853458c9d854a609_SHAREHOLDERSEQUITYAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems_a57a2d97-1d69-4f22-94b2-fac6392c1d0c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_22a83e9c-5238-42d5-8cc9-6b41b3617af2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_a57a2d97-1d69-4f22-94b2-fac6392c1d0c" xlink:to="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_22a83e9c-5238-42d5-8cc9-6b41b3617af2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_680b05d2-acc4-4f7f-b9c9-4ff24a48dda2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ClassOfStockLineItems_a57a2d97-1d69-4f22-94b2-fac6392c1d0c" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_680b05d2-acc4-4f7f-b9c9-4ff24a48dda2" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_83b27d55-05e5-486e-bbf0-9bb4cb91d034" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_680b05d2-acc4-4f7f-b9c9-4ff24a48dda2" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_83b27d55-05e5-486e-bbf0-9bb4cb91d034" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_83b27d55-05e5-486e-bbf0-9bb4cb91d034_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_83b27d55-05e5-486e-bbf0-9bb4cb91d034" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_83b27d55-05e5-486e-bbf0-9bb4cb91d034_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_614e3ec5-b597-4efc-8301-4aa1ae6e25ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_83b27d55-05e5-486e-bbf0-9bb4cb91d034" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_614e3ec5-b597-4efc-8301-4aa1ae6e25ec" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_9df51b39-4da8-4d3c-94ef-8146c5c29649" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_614e3ec5-b597-4efc-8301-4aa1ae6e25ec" xlink:to="loc_us-gaap_SubsequentEventMember_9df51b39-4da8-4d3c-94ef-8146c5c29649" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATION" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATION"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATION" xlink:type="extended" id="i441002e5e78644828c04801bbf8dbed2_SHAREBASEDCOMPENSATION"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables" xlink:type="extended" id="icedbe720ace842be9a7aad3985f9000f_SHAREBASEDCOMPENSATIONTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail" xlink:type="extended" id="i982387c6aed6448d8bf4950d935ddbe0_SHAREBASEDCOMPENSATIONAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_ef8c8ed1-256e-49bb-8537-0908af94c73b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_ef8c8ed1-256e-49bb-8537-0908af94c73b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_be949e1f-8681-4a65-82c3-bc4bff7cc607" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_be949e1f-8681-4a65-82c3-bc4bff7cc607" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationShareConversionRateShares_ea12b8e1-54f1-4b96-9a55-32fc22b64fa6" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationShareConversionRateShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_tyl_ShareBasedCompensationShareConversionRateShares_ea12b8e1-54f1-4b96-9a55-32fc22b64fa6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_871bcbcc-dd01-46e7-8c31-77d22e22a5fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_871bcbcc-dd01-46e7-8c31-77d22e22a5fc" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_17ac1495-edc3-4e51-bc16-26bc4aa10823" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_17ac1495-edc3-4e51-bc16-26bc4aa10823" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_f62f3d9d-3e8f-4bc0-88cf-b367f9069cb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_f62f3d9d-3e8f-4bc0-88cf-b367f9069cb2" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_390e6e27-c59a-4aa9-9835-02306797a1f8" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_390e6e27-c59a-4aa9-9835-02306797a1f8" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_5d035bc9-0a08-4c3b-a093-966c60fe251c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_5d035bc9-0a08-4c3b-a093-966c60fe251c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_fe836c6f-eff2-4484-a837-000563a9782f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_fe836c6f-eff2-4484-a837-000563a9782f" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_2680a2e7-6318-4a5c-8f98-92fd4f525de4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_2680a2e7-6318-4a5c-8f98-92fd4f525de4" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_b630e537-c9f1-4e2a-9350-2d9f02018753" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_b630e537-c9f1-4e2a-9350-2d9f02018753" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_80c240ac-ea42-4895-993d-f5044d4753e1" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:to="loc_srt_RangeAxis_80c240ac-ea42-4895-993d-f5044d4753e1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_80c240ac-ea42-4895-993d-f5044d4753e1_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_80c240ac-ea42-4895-993d-f5044d4753e1" xlink:to="loc_srt_RangeMember_80c240ac-ea42-4895-993d-f5044d4753e1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_7853de88-621f-4b7d-b0c5-1e23fa0a85cc" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_80c240ac-ea42-4895-993d-f5044d4753e1" xlink:to="loc_srt_RangeMember_7853de88-621f-4b7d-b0c5-1e23fa0a85cc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_8d03a166-972f-4f76-b307-48a9b0102c38" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_7853de88-621f-4b7d-b0c5-1e23fa0a85cc" xlink:to="loc_srt_MinimumMember_8d03a166-972f-4f76-b307-48a9b0102c38" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_81370fbf-7cb7-47f0-9adb-2b63f3566079" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_7853de88-621f-4b7d-b0c5-1e23fa0a85cc" xlink:to="loc_srt_MaximumMember_81370fbf-7cb7-47f0-9adb-2b63f3566079" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_0a16bfa1-dccc-4965-aa5a-52a9622a6a73" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:to="loc_us-gaap_AwardTypeAxis_0a16bfa1-dccc-4965-aa5a-52a9622a6a73" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0a16bfa1-dccc-4965-aa5a-52a9622a6a73_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_0a16bfa1-dccc-4965-aa5a-52a9622a6a73" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0a16bfa1-dccc-4965-aa5a-52a9622a6a73_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_0a16bfa1-dccc-4965-aa5a-52a9622a6a73" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_68e59cf0-3a6f-4844-a284-e9ddc1fa8aa1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:to="loc_us-gaap_EmployeeStockOptionMember_68e59cf0-3a6f-4844-a284-e9ddc1fa8aa1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_580960f6-3f56-4052-a070-15e9cc1623dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_580960f6-3f56-4052-a070-15e9cc1623dc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_37f0dccc-3a44-4c55-a101-efe351cee468" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:to="loc_us-gaap_PerformanceSharesMember_37f0dccc-3a44-4c55-a101-efe351cee468" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_7f36712c-6193-4163-b4ea-17288a02e6a4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_7f36712c-6193-4163-b4ea-17288a02e6a4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_7f36712c-6193-4163-b4ea-17288a02e6a4_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_7f36712c-6193-4163-b4ea-17288a02e6a4" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_7f36712c-6193-4163-b4ea-17288a02e6a4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_720eac1d-ccda-4aaa-9bab-a9f2ca72b1b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_7f36712c-6193-4163-b4ea-17288a02e6a4" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_720eac1d-ccda-4aaa-9bab-a9f2ca72b1b1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockMember_1e2c13df-5c0c-4279-af38-daf2aad84c6c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_720eac1d-ccda-4aaa-9bab-a9f2ca72b1b1" xlink:to="loc_us-gaap_EmployeeStockMember_1e2c13df-5c0c-4279-af38-daf2aad84c6c" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail" xlink:type="extended" id="ib9aee8370d1f467d8069e5912a60e4b8_SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_b2e0c280-4468-4304-9851-5611872b9df2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_b2e0c280-4468-4304-9851-5611872b9df2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_499f29d4-1e89-48ac-9264-94ae8608ced7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_499f29d4-1e89-48ac-9264-94ae8608ced7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_b256b76a-503b-4474-b730-278482fabeef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_b256b76a-503b-4474-b730-278482fabeef" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_dd16ccf9-32b3-4ddc-a817-17d2d3aebc9e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_dd16ccf9-32b3-4ddc-a817-17d2d3aebc9e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_293cf054-25a7-47d6-94de-e93f2e445b8a" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_293cf054-25a7-47d6-94de-e93f2e445b8a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_807966a3-ec1c-4a57-9403-21065581f9b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_807966a3-ec1c-4a57-9403-21065581f9b0" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_ece265de-cb4e-4757-a3fe-b3a4b93571bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_807966a3-ec1c-4a57-9403-21065581f9b0" xlink:to="loc_us-gaap_AwardTypeAxis_ece265de-cb4e-4757-a3fe-b3a4b93571bf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ece265de-cb4e-4757-a3fe-b3a4b93571bf_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_ece265de-cb4e-4757-a3fe-b3a4b93571bf" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ece265de-cb4e-4757-a3fe-b3a4b93571bf_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_cb99dce7-2556-48e6-9003-48b9f61d9af2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_ece265de-cb4e-4757-a3fe-b3a4b93571bf" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_cb99dce7-2556-48e6-9003-48b9f61d9af2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_3518ebb1-3b61-470d-bfc2-141b48779e6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_cb99dce7-2556-48e6-9003-48b9f61d9af2" xlink:to="loc_us-gaap_EmployeeStockOptionMember_3518ebb1-3b61-470d-bfc2-141b48779e6e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails" xlink:type="extended" id="if853d5e6154746c59642045ff96b0ae1_SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_593d2d04-d970-412e-bbd8-299e48eec006" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_593d2d04-d970-412e-bbd8-299e48eec006" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_0fc22bb3-9dc4-4028-a869-1d7675043d4e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_0fc22bb3-9dc4-4028-a869-1d7675043d4e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_151f8f7d-26db-4a5d-93e9-d245f9a35120" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_151f8f7d-26db-4a5d-93e9-d245f9a35120" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_27280418-c63c-4b90-9543-794f32ee3b7a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_27280418-c63c-4b90-9543-794f32ee3b7a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_a096878f-c9ce-4103-bf40-bf381bdced45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_a096878f-c9ce-4103-bf40-bf381bdced45" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_8ae59401-4684-4a3c-b3dc-952abe18430d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_593d2d04-d970-412e-bbd8-299e48eec006" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_3d030c2e-2e98-4096-b9b6-526b8c56333c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_3d030c2e-2e98-4096-b9b6-526b8c56333c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_86542678-db1c-4116-b920-7f279262a258" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_86542678-db1c-4116-b920-7f279262a258" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_351fbe71-8621-4dc4-afb6-6b657b639972" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_351fbe71-8621-4dc4-afb6-6b657b639972" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_640a2ff8-0d6f-484f-a988-eae258703646" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_640a2ff8-0d6f-484f-a988-eae258703646" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_162dc429-0f8b-4bf8-bdd1-61b6c103fc4c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c1dd8a34-9151-4fdd-b30d-70e71e61496a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_593d2d04-d970-412e-bbd8-299e48eec006" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c1dd8a34-9151-4fdd-b30d-70e71e61496a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_1d79cc56-1df5-4e22-843a-9407c6ab919f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c1dd8a34-9151-4fdd-b30d-70e71e61496a" xlink:to="loc_us-gaap_AwardTypeAxis_1d79cc56-1df5-4e22-843a-9407c6ab919f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1d79cc56-1df5-4e22-843a-9407c6ab919f_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_1d79cc56-1df5-4e22-843a-9407c6ab919f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1d79cc56-1df5-4e22-843a-9407c6ab919f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_65b436b6-8dd6-4971-8adf-79e26cbf2f40" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_1d79cc56-1df5-4e22-843a-9407c6ab919f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_65b436b6-8dd6-4971-8adf-79e26cbf2f40" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_b4bb3595-5224-4602-b929-a23a209f2d66" xlink:href="tyl-20201231.xsd#tyl_RestrictedStockUnitandPerformanceStockUnitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_65b436b6-8dd6-4971-8adf-79e26cbf2f40" xlink:to="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_b4bb3595-5224-4602-b929-a23a209f2d66" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONStockOptionActivityDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail" xlink:type="extended" id="i04d99ea6a22344e2892cd439085ba386_SHAREBASEDCOMPENSATIONStockOptionActivityDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail" xlink:type="extended" id="i64bacf79303647768139414afa12a84b_SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail" xlink:type="extended" id="ia2ae432931b243bdb35d38b9b0d0f083_SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_0520c9b7-b9aa-4fb1-937d-1f00a665e27b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_0520c9b7-b9aa-4fb1-937d-1f00a665e27b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_d4d85e52-65d0-4e71-8037-417dc4af7c4b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_d4d85e52-65d0-4e71-8037-417dc4af7c4b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_a80f0136-7275-47e3-825b-d9d2ec441503" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_a80f0136-7275-47e3-825b-d9d2ec441503" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ae8e3a9d-65bd-4546-8888-be7f3a94acaa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ae8e3a9d-65bd-4546-8888-be7f3a94acaa" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_9856be48-4582-4b24-b773-5366b793f4af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ae8e3a9d-65bd-4546-8888-be7f3a94acaa" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_9856be48-4582-4b24-b773-5366b793f4af" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_9856be48-4582-4b24-b773-5366b793f4af_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_9856be48-4582-4b24-b773-5366b793f4af" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_9856be48-4582-4b24-b773-5366b793f4af_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_eb8fe99c-7217-4288-85df-4b1c45c84607" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_9856be48-4582-4b24-b773-5366b793f4af" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_eb8fe99c-7217-4288-85df-4b1c45c84607" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember_a863e539-71fe-4556-be1a-c8882768c5ba" xlink:href="tyl-20201231.xsd#tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_eb8fe99c-7217-4288-85df-4b1c45c84607" xlink:to="loc_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember_a863e539-71fe-4556-be1a-c8882768c5ba" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_c8016817-2c61-47e4-96d6-834c8271c116" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_eb8fe99c-7217-4288-85df-4b1c45c84607" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_c8016817-2c61-47e4-96d6-834c8271c116" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHARE" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHARE"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHARE" xlink:type="extended" id="ie26cafee80404447b897662c1092a64b_EARNINGSPERSHARE"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHARETables" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHARETables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHARETables" xlink:type="extended" id="i95a6aff6beb340e8a48054e6ee0a914b_EARNINGSPERSHARETables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail" xlink:type="extended" id="icdcf09c48c0b47d38a55cc1d18d78492_EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHAREAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHAREAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHAREAdditionalInformationDetail" xlink:type="extended" id="i77b79c8118574d6cbe0f0aafd6f6ddb5_EARNINGSPERSHAREAdditionalInformationDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASES" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASES"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LEASES" xlink:type="extended" id="i447e3b015fd34406bb26a20ca8d30afe_LEASES"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LEASESTables" xlink:type="extended" id="i358361c167584397a7dec7694718680e_LEASESTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LEASESAdditionalInformationDetail" xlink:type="extended" id="i8ba1c33ffa0a4590ae85698d6bc4e067_LEASESAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_96b86302-c5bc-4c07-b4d3-5d7de54f2fe7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LesseeOperatingLeaseTermOfContract_96b86302-c5bc-4c07-b4d3-5d7de54f2fe7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_d5dd14e8-e610-4a74-8195-4bf422ada5eb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_d5dd14e8-e610-4a74-8195-4bf422ada5eb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_9c1dc722-555a-4197-8663-b616cc555de1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LeaseCost_9c1dc722-555a-4197-8663-b616cc555de1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeaseRenewalTerm_f4b64792-5126-47ed-9ed5-9b6d92982d27" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeaseRenewalTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LessorOperatingLeaseRenewalTerm_f4b64792-5126-47ed-9ed5-9b6d92982d27" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RentalIncomeNonoperating_277dafb9-e8a0-465b-8ce3-2e2b4ec6bb24" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RentalIncomeNonoperating"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_RentalIncomeNonoperating_277dafb9-e8a0-465b-8ce3-2e2b4ec6bb24" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_8eacce19-8da7-4a36-bdf1-527dab2d0ce9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_8eacce19-8da7-4a36-bdf1-527dab2d0ce9" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_8eacce19-8da7-4a36-bdf1-527dab2d0ce9" xlink:to="loc_srt_RangeAxis_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65" xlink:to="loc_srt_RangeMember_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_8655cfa9-0062-4fe8-9f1d-0691a6f064ba" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65" xlink:to="loc_srt_RangeMember_8655cfa9-0062-4fe8-9f1d-0691a6f064ba" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_8473e434-a8d6-4d0b-b451-730110a4a3a5" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_8655cfa9-0062-4fe8-9f1d-0691a6f064ba" xlink:to="loc_srt_MinimumMember_8473e434-a8d6-4d0b-b451-730110a4a3a5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_9307fd67-c98e-4127-9925-8e167dce828b" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_8655cfa9-0062-4fe8-9f1d-0691a6f064ba" xlink:to="loc_srt_MaximumMember_9307fd67-c98e-4127-9925-8e167dce828b" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofleasecostDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofleasecostDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofleasecostDetails" xlink:type="extended" id="ia93efc2c96284668b5622fcf121aa4ab_LEASESScheduleofleasecostDetails"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofleasesassetsandliabilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails" xlink:type="extended" id="i47a8137bbff34fd4b98037074ae6a10a_LEASESScheduleofleasesassetsandliabilitiesDetails"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofotherinformationrelatedtoleasesDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails" xlink:type="extended" id="i78c0b9e90c764f4ab572e96e5bf02046_LEASESScheduleofotherinformationrelatedtoleasesDetails"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESMaturityofleaseliabilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails" xlink:type="extended" id="ib76c118b3b6b442e9acd524c6cf912ea_LEASESMaturityofleaseliabilitiesDetails"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleoffutureminimumoperatingrentalincomeDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails" xlink:type="extended" id="i9235b5fc1f024e83bdd28f997fedb92f_LEASESScheduleoffutureminimumoperatingrentalincomeDetails"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS" xlink:type="simple" xlink:href="tyl-20201231.xsd#EMPLOYEEBENEFITPLANS"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS" xlink:type="extended" id="i8dc6e7ce3d434e42bff52a3615a6fb3c_EMPLOYEEBENEFITPLANS"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EMPLOYEEBENEFITPLANSAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail" xlink:type="extended" id="ifb8c2421accd40e5867a51cfcffbbadc_EMPLOYEEBENEFITPLANSAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_58f707c0-28ec-4439-905d-558edcc70898" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:to="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_58f707c0-28ec-4439-905d-558edcc70898" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_31913b85-1a4d-4fbe-9bef-1101c422f771" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_31913b85-1a4d-4fbe-9bef-1101c422f771" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanCostRecognized_429ab6bd-ea7b-4a52-84cb-b8b4549c5446" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:to="loc_us-gaap_DefinedContributionPlanCostRecognized_429ab6bd-ea7b-4a52-84cb-b8b4549c5446" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_c366f7f8-5de9-4b5a-b1a5-60d517b6a080" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_c366f7f8-5de9-4b5a-b1a5-60d517b6a080" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_afaa01d2-bdcd-415e-ac43-e11bd468b4dc" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_c366f7f8-5de9-4b5a-b1a5-60d517b6a080" xlink:to="loc_srt_RangeAxis_afaa01d2-bdcd-415e-ac43-e11bd468b4dc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_afaa01d2-bdcd-415e-ac43-e11bd468b4dc_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_afaa01d2-bdcd-415e-ac43-e11bd468b4dc" xlink:to="loc_srt_RangeMember_afaa01d2-bdcd-415e-ac43-e11bd468b4dc_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_ff3bd5fb-37a9-4ec9-90c5-eee24184a131" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_afaa01d2-bdcd-415e-ac43-e11bd468b4dc" xlink:to="loc_srt_RangeMember_ff3bd5fb-37a9-4ec9-90c5-eee24184a131" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_acbb8195-01df-4485-a56b-abee947812b8" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_ff3bd5fb-37a9-4ec9-90c5-eee24184a131" xlink:to="loc_srt_MaximumMember_acbb8195-01df-4485-a56b-abee947812b8" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#COMMITMENTSANDCONTINGENCIES"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES" xlink:type="extended" id="iee3f3e4c9e994cac934c6fa08e220753_COMMITMENTSANDCONTINGENCIES"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail" xlink:type="extended" id="i4380eb7ec1ac46a284fb918934bcb176_COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATION"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION" xlink:type="extended" id="i4050d9e6ac3a41a5ad2ee47d1f37247c_SEGMENTANDRELATEDINFORMATION"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables" xlink:type="extended" id="i1dff9108ccc84fb8b0220dbef743a7e1_SEGMENTANDRELATEDINFORMATIONTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail" xlink:type="extended" id="i5bc582b22ad44172bbc2cb52925f7aac_SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumberOfBusinessUnits_6ccd6706-bb32-4c62-bde6-8b1e6bde3d97" xlink:href="tyl-20201231.xsd#tyl_NumberOfBusinessUnits"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:to="loc_tyl_NumberOfBusinessUnits_6ccd6706-bb32-4c62-bde6-8b1e6bde3d97" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_1b603c39-e2c0-4da1-be82-cb0e38732011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:to="loc_us-gaap_NumberOfReportableSegments_1b603c39-e2c0-4da1-be82-cb0e38732011" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements_af96c52b-4efe-4918-a666-244556097281" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForCapitalImprovements"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:to="loc_us-gaap_PaymentsForCapitalImprovements_af96c52b-4efe-4918-a666-244556097281" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_5ecb7976-98f5-4d6f-8dd4-66d447ec9281" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_5ecb7976-98f5-4d6f-8dd4-66d447ec9281" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_5ecb7976-98f5-4d6f-8dd4-66d447ec9281" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8" xlink:to="loc_us-gaap_SegmentDomain_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_16422336-8663-4c02-aa89-52b7ae91a78a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8" xlink:to="loc_us-gaap_SegmentDomain_16422336-8663-4c02-aa89-52b7ae91a78a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_7afbf5bb-68c5-475b-a885-4c0fd7030166" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_16422336-8663-4c02-aa89-52b7ae91a78a" xlink:to="loc_tyl_EnterpriseSoftwareMember_7afbf5bb-68c5-475b-a885-4c0fd7030166" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_31860fd5-deab-445f-8c4f-8940021e3e76" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_16422336-8663-4c02-aa89-52b7ae91a78a" xlink:to="loc_tyl_AppraisalAndTaxMember_31860fd5-deab-445f-8c4f-8940021e3e76" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail" xlink:type="extended" id="i99b0ebbfd7cb4f01a2a70af07db50240_SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_5bb2ca5b-8a62-4428-9ba7-196115250366" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_5bb2ca5b-8a62-4428-9ba7-196115250366" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_cb13a9df-ee21-47d4-bd01-bc99121be16c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_cb13a9df-ee21-47d4-bd01-bc99121be16c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_d66fddda-d856-4834-a1b2-d1dbff49dcc2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_OperatingIncomeLoss_d66fddda-d856-4834-a1b2-d1dbff49dcc2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SegmentReportingInformationCapitalExpenditures_4d38d62a-6cb3-48bb-9e82-51c5b6741dd3" xlink:href="tyl-20201231.xsd#tyl_SegmentReportingInformationCapitalExpenditures"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_tyl_SegmentReportingInformationCapitalExpenditures_4d38d62a-6cb3-48bb-9e82-51c5b6741dd3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_8fc79910-72fe-4794-b11c-25da16556330" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_Assets_8fc79910-72fe-4794-b11c-25da16556330" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_dea02749-ec83-469e-a9d7-9037362b332e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:to="loc_srt_ProductOrServiceAxis_dea02749-ec83-469e-a9d7-9037362b332e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_dea02749-ec83-469e-a9d7-9037362b332e_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_dea02749-ec83-469e-a9d7-9037362b332e" xlink:to="loc_srt_ProductsAndServicesDomain_dea02749-ec83-469e-a9d7-9037362b332e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_dea02749-ec83-469e-a9d7-9037362b332e" xlink:to="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LicenseMember_ecefedea-4e60-48ec-9a12-bc44a3d68816" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LicenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_us-gaap_LicenseMember_ecefedea-4e60-48ec-9a12-bc44a3d68816" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_79797b3e-894c-46ca-9dbc-2bbabcb905e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubscriptionAndCirculationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_79797b3e-894c-46ca-9dbc-2bbabcb905e6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyServiceMember_31763dc3-c32a-4f94-af12-ea0daca58b8e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TechnologyServiceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_us-gaap_TechnologyServiceMember_31763dc3-c32a-4f94-af12-ea0daca58b8e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaintenanceMember_6f6beed3-abf4-4fef-ac2d-3bf6f91ec8a0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MaintenanceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_us-gaap_MaintenanceMember_6f6beed3-abf4-4fef-ac2d-3bf6f91ec8a0" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember_b622109f-2de6-497d-b0c9-7fe293fcd7ad" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_tyl_AppraisalServicesMember_b622109f-2de6-497d-b0c9-7fe293fcd7ad" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_HardwareandOtherMember_ee94be9b-6827-4c96-9841-24a7a1982949" xlink:href="tyl-20201231.xsd#tyl_HardwareandOtherMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_tyl_HardwareandOtherMember_ee94be9b-6827-4c96-9841-24a7a1982949" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_2ad76a4b-7cfa-4378-968b-761c446e0f6d" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:to="loc_srt_ConsolidationItemsAxis_2ad76a4b-7cfa-4378-968b-761c446e0f6d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_2ad76a4b-7cfa-4378-968b-761c446e0f6d_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_2ad76a4b-7cfa-4378-968b-761c446e0f6d" xlink:to="loc_srt_ConsolidationItemsDomain_2ad76a4b-7cfa-4378-968b-761c446e0f6d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_2ad76a4b-7cfa-4378-968b-761c446e0f6d" xlink:to="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntersegmentEliminationMember_5fbfdb2e-18ea-48a4-8e88-50a69c0b099f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntersegmentEliminationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:to="loc_us-gaap_IntersegmentEliminationMember_5fbfdb2e-18ea-48a4-8e88-50a69c0b099f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_9680735f-55c5-4e2f-add1-77037e5ccee6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:to="loc_us-gaap_OperatingSegmentsMember_9680735f-55c5-4e2f-add1-77037e5ccee6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_6faddefe-5658-46f5-815c-1769e853e88a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:to="loc_us-gaap_CorporateNonSegmentMember_6faddefe-5658-46f5-815c-1769e853e88a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_cb249ea7-61a4-4859-b5f7-85b901517c00" xlink:href="tyl-20201231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:to="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_cb249ea7-61a4-4859-b5f7-85b901517c00" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_a0f80569-b125-4c58-8836-d6c52790328c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_a0f80569-b125-4c58-8836-d6c52790328c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a0f80569-b125-4c58-8836-d6c52790328c_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_a0f80569-b125-4c58-8836-d6c52790328c" xlink:to="loc_us-gaap_SegmentDomain_a0f80569-b125-4c58-8836-d6c52790328c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_d93e2e22-5e6a-4e26-b8c3-6b3ace51dfa6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_a0f80569-b125-4c58-8836-d6c52790328c" xlink:to="loc_us-gaap_SegmentDomain_d93e2e22-5e6a-4e26-b8c3-6b3ace51dfa6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_3598c0e5-5c6f-4f7c-adef-3592eb57d00a" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_d93e2e22-5e6a-4e26-b8c3-6b3ace51dfa6" xlink:to="loc_tyl_EnterpriseSoftwareMember_3598c0e5-5c6f-4f7c-adef-3592eb57d00a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_d857fd6d-1519-4fb1-b19c-fd1fb767ad31" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_d93e2e22-5e6a-4e26-b8c3-6b3ace51dfa6" xlink:to="loc_tyl_AppraisalAndTaxMember_d857fd6d-1519-4fb1-b19c-fd1fb767ad31" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail" xlink:type="extended" id="i59b30fd0da6c4b25975be5b67db8efd4_SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_1e8de37f-ab07-440f-8ef1-114d6a52b325" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_OperatingIncomeLoss_1e8de37f-ab07-440f-8ef1-114d6a52b325" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_7af23bcd-b472-49b5-8c24-d313f1caad1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_7af23bcd-b472-49b5-8c24-d313f1caad1c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_f14ab032-89b4-4f98-8914-d452e36e4a34" xlink:href="tyl-20201231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_f14ab032-89b4-4f98-8914-d452e36e4a34" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_fd04cb91-77d6-4b66-a5a7-68defa1da50a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_fd04cb91-77d6-4b66-a5a7-68defa1da50a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d0d9757f-bddb-4e91-bf5b-e8b0ef973af0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d0d9757f-bddb-4e91-bf5b-e8b0ef973af0" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_63c07889-9ab5-4bb0-9677-6b39628b4ecd" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:to="loc_srt_ConsolidationItemsAxis_63c07889-9ab5-4bb0-9677-6b39628b4ecd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_63c07889-9ab5-4bb0-9677-6b39628b4ecd_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_63c07889-9ab5-4bb0-9677-6b39628b4ecd" xlink:to="loc_srt_ConsolidationItemsDomain_63c07889-9ab5-4bb0-9677-6b39628b4ecd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_090d24d7-bd5e-4be1-a44a-09c8bff0e14f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_63c07889-9ab5-4bb0-9677-6b39628b4ecd" xlink:to="loc_srt_ConsolidationItemsDomain_090d24d7-bd5e-4be1-a44a-09c8bff0e14f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_cd48271d-9047-4c7b-96ba-a21fc784fa9c" xlink:href="tyl-20201231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_090d24d7-bd5e-4be1-a44a-09c8bff0e14f" xlink:to="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_cd48271d-9047-4c7b-96ba-a21fc784fa9c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_b288592d-892e-4b6c-9bbc-74cc07b74ed3" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:to="loc_srt_ProductOrServiceAxis_b288592d-892e-4b6c-9bbc-74cc07b74ed3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_b288592d-892e-4b6c-9bbc-74cc07b74ed3_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_b288592d-892e-4b6c-9bbc-74cc07b74ed3" xlink:to="loc_srt_ProductsAndServicesDomain_b288592d-892e-4b6c-9bbc-74cc07b74ed3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_a0215232-e9b1-4ae5-a8a7-40f5346246ce" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_b288592d-892e-4b6c-9bbc-74cc07b74ed3" xlink:to="loc_srt_ProductsAndServicesDomain_a0215232-e9b1-4ae5-a8a7-40f5346246ce" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AcquiredSoftwareMember_8aacce2d-898e-4e2c-80e4-534b3d37d3a2" xlink:href="tyl-20201231.xsd#tyl_AcquiredSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_a0215232-e9b1-4ae5-a8a7-40f5346246ce" xlink:to="loc_tyl_AcquiredSoftwareMember_8aacce2d-898e-4e2c-80e4-534b3d37d3a2" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUE"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE" xlink:type="extended" id="ibe00e07e926740788ee4dcfa0d86c1fb_DISAGGREGATIONOFREVENUE"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUETables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables" xlink:type="extended" id="i85730fa58e504913902a5258989bf822_DISAGGREGATIONOFREVENUETables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUEDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails" xlink:type="extended" id="i3f023d2ffca349ad952d743205ee3042_DISAGGREGATIONOFREVENUEDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_65fab723-10cb-48de-b5a6-eebbb75bd452" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c9fdae11-6b2e-4069-a546-be9783bb949c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_65fab723-10cb-48de-b5a6-eebbb75bd452" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c9fdae11-6b2e-4069-a546-be9783bb949c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_65fab723-10cb-48de-b5a6-eebbb75bd452" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_32efe532-dd83-4fe1-8817-bcf77addec30" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_srt_ProductOrServiceAxis_32efe532-dd83-4fe1-8817-bcf77addec30" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_32efe532-dd83-4fe1-8817-bcf77addec30_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_32efe532-dd83-4fe1-8817-bcf77addec30" xlink:to="loc_srt_ProductsAndServicesDomain_32efe532-dd83-4fe1-8817-bcf77addec30_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_32efe532-dd83-4fe1-8817-bcf77addec30" xlink:to="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LicenseMember_e3443450-2038-41af-87ea-07fed79cc37f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LicenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_LicenseMember_e3443450-2038-41af-87ea-07fed79cc37f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_74701904-5848-4d8a-b844-324754643c22" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubscriptionAndCirculationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_74701904-5848-4d8a-b844-324754643c22" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyServiceMember_f0e37ae4-93c1-43d1-ab4c-039439eb14b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TechnologyServiceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_TechnologyServiceMember_f0e37ae4-93c1-43d1-ab4c-039439eb14b1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaintenanceMember_06c92fe6-8eda-44ca-b677-34dae543e47f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MaintenanceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_MaintenanceMember_06c92fe6-8eda-44ca-b677-34dae543e47f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember_fb5d7fab-9af2-4979-9faf-dc94a56167d3" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_tyl_AppraisalServicesMember_fb5d7fab-9af2-4979-9faf-dc94a56167d3" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductMember_81e1bbf1-6d1a-4d25-af28-bbe1d830ea33" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_ProductMember_81e1bbf1-6d1a-4d25-af28-bbe1d830ea33" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_56ad6348-353a-4d69-8480-f1aa717efd92" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_56ad6348-353a-4d69-8480-f1aa717efd92" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_56ad6348-353a-4d69-8480-f1aa717efd92_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_56ad6348-353a-4d69-8480-f1aa717efd92" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_56ad6348-353a-4d69-8480-f1aa717efd92_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_5c39997a-5dac-41fe-91a8-c8b962122214" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_56ad6348-353a-4d69-8480-f1aa717efd92" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_5c39997a-5dac-41fe-91a8-c8b962122214" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_aaa2cf0b-cd82-4665-898d-d862bf3883b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_5c39997a-5dac-41fe-91a8-c8b962122214" xlink:to="loc_us-gaap_TransferredAtPointInTimeMember_aaa2cf0b-cd82-4665-898d-d862bf3883b5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember_b86d1b1b-26c8-481a-a925-6cb04c2a3a38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_5c39997a-5dac-41fe-91a8-c8b962122214" xlink:to="loc_us-gaap_TransferredOverTimeMember_b86d1b1b-26c8-481a-a925-6cb04c2a3a38" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_8f5d8cd8-d328-42f0-82c9-8928063e2d75" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_srt_MajorCustomersAxis_8f5d8cd8-d328-42f0-82c9-8928063e2d75" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_8f5d8cd8-d328-42f0-82c9-8928063e2d75_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_8f5d8cd8-d328-42f0-82c9-8928063e2d75" xlink:to="loc_srt_NameOfMajorCustomerDomain_8f5d8cd8-d328-42f0-82c9-8928063e2d75_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_e5f8ea4d-a59d-4de7-8bde-2fc4e234be7e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_8f5d8cd8-d328-42f0-82c9-8928063e2d75" xlink:to="loc_srt_NameOfMajorCustomerDomain_e5f8ea4d-a59d-4de7-8bde-2fc4e234be7e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecurringRevenueMember_3c7e5b3d-b9bd-42c3-8090-b780c7f7549e" xlink:href="tyl-20201231.xsd#tyl_RecurringRevenueMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_e5f8ea4d-a59d-4de7-8bde-2fc4e234be7e" xlink:to="loc_tyl_RecurringRevenueMember_3c7e5b3d-b9bd-42c3-8090-b780c7f7549e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NonrecurringRevenueMember_527aa97e-50fd-442f-88b9-2b3ba1747d0f" xlink:href="tyl-20201231.xsd#tyl_NonrecurringRevenueMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_e5f8ea4d-a59d-4de7-8bde-2fc4e234be7e" xlink:to="loc_tyl_NonrecurringRevenueMember_527aa97e-50fd-442f-88b9-2b3ba1747d0f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_0c13c782-a3b4-405c-9ae8-dcbc897c301c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_0c13c782-a3b4-405c-9ae8-dcbc897c301c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_0c13c782-a3b4-405c-9ae8-dcbc897c301c_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0c13c782-a3b4-405c-9ae8-dcbc897c301c" xlink:to="loc_us-gaap_SegmentDomain_0c13c782-a3b4-405c-9ae8-dcbc897c301c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_c66cd50b-b175-4449-b0b7-0a7f0f70e869" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0c13c782-a3b4-405c-9ae8-dcbc897c301c" xlink:to="loc_us-gaap_SegmentDomain_c66cd50b-b175-4449-b0b7-0a7f0f70e869" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_fa279853-b7ef-4781-a996-d93eb7e78d07" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_c66cd50b-b175-4449-b0b7-0a7f0f70e869" xlink:to="loc_tyl_EnterpriseSoftwareMember_fa279853-b7ef-4781-a996-d93eb7e78d07" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_c0648287-ec72-410e-bb80-21b1fd4f4b8d" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_c66cd50b-b175-4449-b0b7-0a7f0f70e869" xlink:to="loc_tyl_AppraisalAndTaxMember_c0648287-ec72-410e-bb80-21b1fd4f4b8d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_88d3d762-aa72-41f6-ac5e-ef074311935e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_srt_ConsolidationItemsAxis_88d3d762-aa72-41f6-ac5e-ef074311935e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_88d3d762-aa72-41f6-ac5e-ef074311935e_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_88d3d762-aa72-41f6-ac5e-ef074311935e" xlink:to="loc_srt_ConsolidationItemsDomain_88d3d762-aa72-41f6-ac5e-ef074311935e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_88d3d762-aa72-41f6-ac5e-ef074311935e" xlink:to="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntersegmentEliminationMember_1815fb5d-9fd1-4bed-aa1b-3abdc10b2ae6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntersegmentEliminationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:to="loc_us-gaap_IntersegmentEliminationMember_1815fb5d-9fd1-4bed-aa1b-3abdc10b2ae6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_f95b13d2-deea-4562-a9d9-348566377706" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:to="loc_us-gaap_OperatingSegmentsMember_f95b13d2-deea-4562-a9d9-348566377706" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_be8ba76c-6e09-4f52-bdef-bab3ede0b8ed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:to="loc_us-gaap_CorporateNonSegmentMember_be8ba76c-6e09-4f52-bdef-bab3ede0b8ed" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CorporateAndEliminationsMember_fb6a6cd4-c1b5-4740-9fc6-59a02d449d02" xlink:href="tyl-20201231.xsd#tyl_CorporateAndEliminationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:to="loc_tyl_CorporateAndEliminationsMember_fb6a6cd4-c1b5-4740-9fc6-59a02d449d02" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUEAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails" xlink:type="extended" id="i96b16d7d9d164526896cef857e5f1c23_DISAGGREGATIONOFREVENUEAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_ceca9cdf-07c7-4f31-ac7b-c14f0131d146" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_1821d1f6-e45e-4df6-bae4-785f7b2ef643" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerContractTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_ceca9cdf-07c7-4f31-ac7b-c14f0131d146" xlink:to="loc_tyl_RevenueFromContractWithCustomerContractTerm_1821d1f6-e45e-4df6-bae4-785f7b2ef643" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_38536f3c-ce36-483b-ac56-97bbb7bd91ef" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_ceca9cdf-07c7-4f31-ac7b-c14f0131d146" xlink:to="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_38536f3c-ce36-483b-ac56-97bbb7bd91ef" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_dc2a2152-8b47-4166-9be9-522b78ea5c9f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_ceca9cdf-07c7-4f31-ac7b-c14f0131d146" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_dc2a2152-8b47-4166-9be9-522b78ea5c9f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_81afe11a-abfd-4791-828a-80620772bbc8" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_dc2a2152-8b47-4166-9be9-522b78ea5c9f" xlink:to="loc_srt_RangeAxis_81afe11a-abfd-4791-828a-80620772bbc8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_81afe11a-abfd-4791-828a-80620772bbc8_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_81afe11a-abfd-4791-828a-80620772bbc8" xlink:to="loc_srt_RangeMember_81afe11a-abfd-4791-828a-80620772bbc8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_8b900f50-afe7-49d0-acaa-5e21e54fffeb" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_81afe11a-abfd-4791-828a-80620772bbc8" xlink:to="loc_srt_RangeMember_8b900f50-afe7-49d0-acaa-5e21e54fffeb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_fa9e19a0-3813-4c99-8bb4-893c5fb4bb2c" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_8b900f50-afe7-49d0-acaa-5e21e54fffeb" xlink:to="loc_srt_MinimumMember_fa9e19a0-3813-4c99-8bb4-893c5fb4bb2c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_4db0dd85-5d66-41cf-899f-0056f495554d" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_8b900f50-afe7-49d0-acaa-5e21e54fffeb" xlink:to="loc_srt_MaximumMember_4db0dd85-5d66-41cf-899f-0056f495554d" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS" xlink:type="extended" id="i47f34edf790a45729fd99e6d1e887ae0_DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables" xlink:type="extended" id="i92197c22b80e4e81bc49a9d6092cc96b_DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails" xlink:type="extended" id="i1b243d39823b4450b4740be6c742290a_DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_9f3f2f5c-1af5-48ff-af99-22873616fbd3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_090b109b-22bc-48b3-b22d-0d56751dffcf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_9f3f2f5c-1af5-48ff-af99-22873616fbd3" xlink:to="loc_us-gaap_ContractWithCustomerLiability_090b109b-22bc-48b3-b22d-0d56751dffcf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_9f3f2f5c-1af5-48ff-af99-22873616fbd3" xlink:to="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_204131da-cecc-452b-aa07-0cccab0039b8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_504cc788-9366-424e-8bb7-7b2f4b1d9ad1" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityIncreaseFromDeferral"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:to="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_504cc788-9366-424e-8bb7-7b2f4b1d9ad1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized_6a505da4-44ee-4abe-b089-e47e2dc26cba" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:to="loc_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized_6a505da4-44ee-4abe-b089-e47e2dc26cba" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_64001e3b-3e59-4258-86a9-e42ce7c6988c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_9f3f2f5c-1af5-48ff-af99-22873616fbd3" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_3dd9f37d-6c91-4153-8c25-504b8eafd460" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:to="loc_srt_ConsolidationItemsAxis_3dd9f37d-6c91-4153-8c25-504b8eafd460" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_3dd9f37d-6c91-4153-8c25-504b8eafd460_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_3dd9f37d-6c91-4153-8c25-504b8eafd460" xlink:to="loc_srt_ConsolidationItemsDomain_3dd9f37d-6c91-4153-8c25-504b8eafd460_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_3d2daba5-b85f-4ad9-869b-779078dd9d2d" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_3dd9f37d-6c91-4153-8c25-504b8eafd460" xlink:to="loc_srt_ConsolidationItemsDomain_3d2daba5-b85f-4ad9-869b-779078dd9d2d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_c006544b-07fe-48d1-8a58-29e4bcba7c71" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_3d2daba5-b85f-4ad9-869b-779078dd9d2d" xlink:to="loc_us-gaap_OperatingSegmentsMember_c006544b-07fe-48d1-8a58-29e4bcba7c71" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_69ba3170-78a1-4eec-95d6-aee0220c0b3a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_3d2daba5-b85f-4ad9-869b-779078dd9d2d" xlink:to="loc_us-gaap_CorporateNonSegmentMember_69ba3170-78a1-4eec-95d6-aee0220c0b3a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_f976e07e-13f9-4f42-8011-3fe46c9e8258" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_f976e07e-13f9-4f42-8011-3fe46c9e8258" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_f976e07e-13f9-4f42-8011-3fe46c9e8258_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_f976e07e-13f9-4f42-8011-3fe46c9e8258" xlink:to="loc_us-gaap_SegmentDomain_f976e07e-13f9-4f42-8011-3fe46c9e8258_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_b41393c6-2480-40ee-8467-5c25d3bd0126" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_f976e07e-13f9-4f42-8011-3fe46c9e8258" xlink:to="loc_us-gaap_SegmentDomain_b41393c6-2480-40ee-8467-5c25d3bd0126" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_d8e99059-cdab-4c97-8e77-306cf138509f" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_b41393c6-2480-40ee-8467-5c25d3bd0126" xlink:to="loc_tyl_EnterpriseSoftwareMember_d8e99059-cdab-4c97-8e77-306cf138509f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_93177fcc-6115-4c81-9d28-4f3748947149" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_b41393c6-2480-40ee-8467-5c25d3bd0126" xlink:to="loc_tyl_AppraisalAndTaxMember_93177fcc-6115-4c81-9d28-4f3748947149" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails" xlink:type="extended" id="i6f65b1f7a58a40cba7656b652c1a2178_DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_941ed9cd-2faa-49b4-b6ba-45332d7cfd82" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_941ed9cd-2faa-49b4-b6ba-45332d7cfd82" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_fb431553-57f9-40ca-9ba2-238b4b4cff1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_fb431553-57f9-40ca-9ba2-238b4b4cff1f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_da021481-16c5-4f0e-a401-ff99c5c883a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_da021481-16c5-4f0e-a401-ff99c5c883a3" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1" xlink:type="extended" id="i64124a1652aa4727a83b751082a51df0_DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_941ed9cd-2faa-49b4-b6ba-45332d7cfd82" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_941ed9cd-2faa-49b4-b6ba-45332d7cfd82" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_fb431553-57f9-40ca-9ba2-238b4b4cff1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_fb431553-57f9-40ca-9ba2-238b4b4cff1f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDCOMMISSIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDCOMMISSIONS"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DEFERREDCOMMISSIONS" xlink:type="extended" id="i73df4aa916c14a888060ee1b0255540d_DEFERREDCOMMISSIONS"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDCOMMISSIONSDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails" xlink:type="extended" id="i5cd14cc805e84e318ec6285b284c0464_DEFERREDCOMMISSIONSDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_1cc3ba17-9b79-49eb-9f78-401907238c51" xlink:href="tyl-20201231.xsd#tyl_SalesCommissionsAmortizationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:to="loc_tyl_SalesCommissionsAmortizationPeriod_1cc3ba17-9b79-49eb-9f78-401907238c51" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostNet_5afffcf0-99a4-4df4-8342-a0db62c364d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:to="loc_us-gaap_CapitalizedContractCostNet_5afffcf0-99a4-4df4-8342-a0db62c364d6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostAmortization_00d73bd1-855c-44c8-b87d-add853de1989" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:to="loc_us-gaap_CapitalizedContractCostAmortization_00d73bd1-855c-44c8-b87d-add853de1989" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostTable_c1843775-c277-40af-b4c9-374b989a38d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:to="loc_us-gaap_CapitalizedContractCostTable_c1843775-c277-40af-b4c9-374b989a38d1" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_CapitalizedContractCostTable_c1843775-c277-40af-b4c9-374b989a38d1" xlink:to="loc_srt_RangeAxis_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5" xlink:to="loc_srt_RangeMember_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_ba58011c-ee25-488a-9f32-20b95a92e5a0" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5" xlink:to="loc_srt_RangeMember_ba58011c-ee25-488a-9f32-20b95a92e5a0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_2813fd50-ef1a-41d1-b7cc-5990053caca5" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_ba58011c-ee25-488a-9f32-20b95a92e5a0" xlink:to="loc_srt_MinimumMember_2813fd50-ef1a-41d1-b7cc-5990053caca5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_5bdb7362-df73-4cdc-853d-68f5e64f9ed1" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_ba58011c-ee25-488a-9f32-20b95a92e5a0" xlink:to="loc_srt_MaximumMember_5bdb7362-df73-4cdc-853d-68f5e64f9ed1" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUBSEQUENTEVENTS" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUBSEQUENTEVENTS"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SUBSEQUENTEVENTS" xlink:type="extended" id="ic496bd6a0a9f4b28a92af528b717056b_SUBSEQUENTEVENTS"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUBSEQUENTEVENTSDetails"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails" xlink:type="extended" id="ie59041bc6abe4cc1b4174fb0ad2d0589_SUBSEQUENTEVENTSDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_81da8d17-9e35-4cda-ba19-648539c6675b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_81da8d17-9e35-4cda-ba19-648539c6675b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BusinessAcquisitionOptionConversionPrice_26d5131a-289f-468a-9af3-195429c6b553" xlink:href="tyl-20201231.xsd#tyl_BusinessAcquisitionOptionConversionPrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_tyl_BusinessAcquisitionOptionConversionPrice_26d5131a-289f-468a-9af3-195429c6b553" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_5c81d4be-e461-43b2-a31c-c09101ffac1d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_5c81d4be-e461-43b2-a31c-c09101ffac1d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm_b4bb6e78-7684-4cbb-a1be-46ffc4a16182" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_us-gaap_DebtInstrumentTerm_b4bb6e78-7684-4cbb-a1be-46ffc4a16182" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BusinessCombinationTerminationFee_a97aed84-4882-42e0-a905-5b05a4ee33c8" xlink:href="tyl-20201231.xsd#tyl_BusinessCombinationTerminationFee"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_tyl_BusinessCombinationTerminationFee_a97aed84-4882-42e0-a905-5b05a4ee33c8" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_1d929b8c-f458-4e4e-a08f-5b5bb5cef114" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_1d929b8c-f458-4e4e-a08f-5b5bb5cef114" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_1d929b8c-f458-4e4e-a08f-5b5bb5cef114_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1d929b8c-f458-4e4e-a08f-5b5bb5cef114" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_1d929b8c-f458-4e4e-a08f-5b5bb5cef114_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_cf42edc4-d1cd-4b55-8120-7820b2f879e2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1d929b8c-f458-4e4e-a08f-5b5bb5cef114" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_cf42edc4-d1cd-4b55-8120-7820b2f879e2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_02ed1d64-050d-4835-9b14-5b62cc0c5110" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_cf42edc4-d1cd-4b55-8120-7820b2f879e2" xlink:to="loc_us-gaap_SubsequentEventMember_02ed1d64-050d-4835-9b14-5b62cc0c5110" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_a5d4de1b-0a70-46a2-9df1-629b69076fb9" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_dei_LegalEntityAxis_a5d4de1b-0a70-46a2-9df1-629b69076fb9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_a5d4de1b-0a70-46a2-9df1-629b69076fb9_default" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_a5d4de1b-0a70-46a2-9df1-629b69076fb9" xlink:to="loc_dei_EntityDomain_a5d4de1b-0a70-46a2-9df1-629b69076fb9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_52fa6ebd-8c68-42a0-9986-ca7f5de649d1" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_a5d4de1b-0a70-46a2-9df1-629b69076fb9" xlink:to="loc_dei_EntityDomain_52fa6ebd-8c68-42a0-9986-ca7f5de649d1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NICIncMember_7e851228-bf13-4477-816a-13ed089d37aa" xlink:href="tyl-20201231.xsd#tyl_NICIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_52fa6ebd-8c68-42a0-9986-ca7f5de649d1" xlink:to="loc_tyl_NICIncMember_7e851228-bf13-4477-816a-13ed089d37aa" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1028deba-b78d-42a4-b158-189f4c9787b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1028deba-b78d-42a4-b158-189f4c9787b4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1028deba-b78d-42a4-b158-189f4c9787b4_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1028deba-b78d-42a4-b158-189f4c9787b4" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1028deba-b78d-42a4-b158-189f4c9787b4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_58bb6bc7-f325-42af-aa45-fb8c5f91411f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1028deba-b78d-42a4-b158-189f4c9787b4" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_58bb6bc7-f325-42af-aa45-fb8c5f91411f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MergerSubMember_92f8292b-c74a-4d92-a6ea-d1ab17f71c2f" xlink:href="tyl-20201231.xsd#tyl_MergerSubMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_58bb6bc7-f325-42af-aa45-fb8c5f91411f" xlink:to="loc_tyl_MergerSubMember_92f8292b-c74a-4d92-a6ea-d1ab17f71c2f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis_80a662c6-ba0f-4229-a7fe-3960f33bf1f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_LineOfCreditFacilityAxis_80a662c6-ba0f-4229-a7fe-3960f33bf1f4" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_80a662c6-ba0f-4229-a7fe-3960f33bf1f4_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLenderDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_80a662c6-ba0f-4229-a7fe-3960f33bf1f4" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_80a662c6-ba0f-4229-a7fe-3960f33bf1f4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_6b710bf2-08fe-4026-86ef-615180495f54" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLenderDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_80a662c6-ba0f-4229-a7fe-3960f33bf1f4" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_6b710bf2-08fe-4026-86ef-615180495f54" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_GoldmanSachsBankUSAMember_15900cc9-9f56-4f0c-b4fa-8e176b5f23d7" xlink:href="tyl-20201231.xsd#tyl_GoldmanSachsBankUSAMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain_6b710bf2-08fe-4026-86ef-615180495f54" xlink:to="loc_tyl_GoldmanSachsBankUSAMember_15900cc9-9f56-4f0c-b4fa-8e176b5f23d7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_27efe459-8c8f-4c79-a330-d439b439ecd5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_CreditFacilityAxis_27efe459-8c8f-4c79-a330-d439b439ecd5" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_27efe459-8c8f-4c79-a330-d439b439ecd5_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_27efe459-8c8f-4c79-a330-d439b439ecd5" xlink:to="loc_us-gaap_CreditFacilityDomain_27efe459-8c8f-4c79-a330-d439b439ecd5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_69169372-430e-4101-8350-64dad200c1de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_27efe459-8c8f-4c79-a330-d439b439ecd5" xlink:to="loc_us-gaap_CreditFacilityDomain_69169372-430e-4101-8350-64dad200c1de" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SeniorUnsecuredBridgeLoanFacilityMember_1b77e52f-5cb7-4856-af5d-13dcc036e5db" xlink:href="tyl-20201231.xsd#tyl_SeniorUnsecuredBridgeLoanFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_69169372-430e-4101-8350-64dad200c1de" xlink:to="loc_tyl_SeniorUnsecuredBridgeLoanFacilityMember_1b77e52f-5cb7-4856-af5d-13dcc036e5db" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_a5a11719-3e45-4162-adb5-b87534375d74" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementScenarioAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_srt_StatementScenarioAxis_a5a11719-3e45-4162-adb5-b87534375d74" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_a5a11719-3e45-4162-adb5-b87534375d74_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_a5a11719-3e45-4162-adb5-b87534375d74" xlink:to="loc_srt_ScenarioUnspecifiedDomain_a5a11719-3e45-4162-adb5-b87534375d74_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_94f8d5b9-4e66-4be1-98ab-283a09f8084e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_a5a11719-3e45-4162-adb5-b87534375d74" xlink:to="loc_srt_ScenarioUnspecifiedDomain_94f8d5b9-4e66-4be1-98ab-283a09f8084e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScenarioPlanMember_782aeb11-a22e-4d4d-a4d4-599a7d8c122f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScenarioPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ScenarioUnspecifiedDomain_94f8d5b9-4e66-4be1-98ab-283a09f8084e" xlink:to="loc_us-gaap_ScenarioPlanMember_782aeb11-a22e-4d4d-a4d4-599a7d8c122f" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunaudited"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited" xlink:type="extended" id="i6c7a3d28966c40dab7692ee8cc3c7e42_QUARTERLYFINANCIALINFORMATIONunaudited"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunauditedTables"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables" xlink:type="extended" id="i6b74d1a65560411788732b9a86c2c3b6_QUARTERLYFINANCIALINFORMATIONunauditedTables"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail"/>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail" xlink:type="extended" id="i1a0eaa1735ea4775ac8bb21ffa906a75_QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail"/>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>9
<FILENAME>tyl-20201231_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:cb70be07-24b1-4aa6-9599-1da6bf66cbac,g:07fa3be8-7f1e-4f83-baed-fe8860b305ca-->
<link:linkbase 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" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_33bae401-cde5-4ec2-aa9c-7389b31de760_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingent Purchase Consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsPolicy" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsPolicy" xlink:to="lab_us-gaap_BusinessCombinationsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_7e3e6294-fdb6-47b8-b48b-8e0067d9f318_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_d747c2f4-b0cb-4964-8864-53cd6a5e3386_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-deductible business expenses</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:to="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_cd4c0bfd-e808-4ae0-9fca-bcb2d31a7b54_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_eea4d6e5-10d6-4649-94c1-59fe7b9ac330_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivable Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_label_en-US" xlink:label="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivable Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:to="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_IcfrAuditorAttestationFlag_4d304195-2480-47cf-81d5-cd1d2d8763fb_terseLabel_en-US" xlink:label="lab_dei_IcfrAuditorAttestationFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
    <link:label id="lab_dei_IcfrAuditorAttestationFlag_label_en-US" xlink:label="lab_dei_IcfrAuditorAttestationFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_IcfrAuditorAttestationFlag" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_IcfrAuditorAttestationFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_IcfrAuditorAttestationFlag" xlink:to="lab_dei_IcfrAuditorAttestationFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_8c8d73d8-8996-4b4f-a3dc-ff258d510cab_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Aggregate Intrinsic Value, Outstanding</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_56db5327-f726-413d-8609-a90caad5f63e_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other income, net</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_59d9f2b6-1f7a-4b81-a7b8-74af3dd27434_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other income, net</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Nonoperating Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_58df16a1-6a2a-4723-b359-827673c7fe10_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">COMMITMENTS AND CONTINGENCIES</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_313a7861-55b3-4281-900c-96d4c1bcbe3f_terseLabel_en-US" xlink:label="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of leases assets and liabilities</link:label>
    <link:label id="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Leases Assets And Liabilities [Table Text Block]</link:label>
    <link:label id="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_documentation_en-US" xlink:label="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Leases Assets And Liabilities [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" xlink:href="tyl-20201231.xsd#tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" xlink:to="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReportingUnitAxis_587977d1-d309-4642-95d5-a818e34d0921_terseLabel_en-US" xlink:label="lab_us-gaap_ReportingUnitAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reporting Unit [Axis]</link:label>
    <link:label id="lab_us-gaap_ReportingUnitAxis_label_en-US" xlink:label="lab_us-gaap_ReportingUnitAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reporting Unit [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReportingUnitAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReportingUnitAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReportingUnitAxis" xlink:to="lab_us-gaap_ReportingUnitAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockMember_8ebe01fa-8ade-40b0-b504-1d6c7ca23624_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock</link:label>
    <link:label id="lab_us-gaap_TreasuryStockMember_label_en-US" xlink:label="lab_us-gaap_TreasuryStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockMember" xlink:to="lab_us-gaap_TreasuryStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityRollForward_7998ea16-9ff2-4d04-94da-23fb31a1504d_terseLabel_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer Liability</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityRollForward_label_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer Liability [Roll Forward]</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityRollForward_documentation_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityRollForward" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer Liability [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityRollForward" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward" xlink:to="lab_tyl_ContractWithCustomerLiabilityRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_c92976a0-e86f-4357-a305-a7c0fa87ea35_verboseLabel_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:to="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_GoldmanSachsBankUSAMember_8fc3b71e-c9a7-4d90-ad45-51e27ff0343a_terseLabel_en-US" xlink:label="lab_tyl_GoldmanSachsBankUSAMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goldman Sachs Bank USA</link:label>
    <link:label id="lab_tyl_GoldmanSachsBankUSAMember_label_en-US" xlink:label="lab_tyl_GoldmanSachsBankUSAMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goldman Sachs Bank USA [Member]</link:label>
    <link:label id="lab_tyl_GoldmanSachsBankUSAMember_documentation_en-US" xlink:label="lab_tyl_GoldmanSachsBankUSAMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goldman Sachs Bank USA</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_GoldmanSachsBankUSAMember" xlink:href="tyl-20201231.xsd#tyl_GoldmanSachsBankUSAMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_GoldmanSachsBankUSAMember" xlink:to="lab_tyl_GoldmanSachsBankUSAMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_3a4a14b9-8f31-40aa-a136-93d557dcaf13_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments related to goodwill</link:label>
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_df7c9a8a-d80b-4d6c-b951-ee07a4ef0cf6_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase price adjustments related to CHT acquisition</link:label>
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_label_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Purchase Accounting Adjustments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:to="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeasesPolicyTextBlock_59884cd5-6a01-4a11-81de-958c1fe5b77f_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeLeasesPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Leases [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeasesPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeasesPolicyTextBlock" xlink:to="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_a070ac6c-1adf-45d1-8c33-40f4df299239_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from marketable security investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Sale and Maturity of Marketable Securities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:to="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InsuranceRecoveries_d3aa1bc7-2cb3-47fb-8a6a-d2b59cdc3dbf_terseLabel_en-US" xlink:label="lab_us-gaap_InsuranceRecoveries" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance recoveries</link:label>
    <link:label id="lab_us-gaap_InsuranceRecoveries_label_en-US" xlink:label="lab_us-gaap_InsuranceRecoveries" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance Recoveries</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InsuranceRecoveries" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InsuranceRecoveries"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InsuranceRecoveries" xlink:to="lab_us-gaap_InsuranceRecoveries" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_CreditAgreementMember_ce20fcd2-ee2a-4e26-a37b-724285b33d85_terseLabel_en-US" xlink:label="lab_tyl_CreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Agreement</link:label>
    <link:label id="lab_tyl_CreditAgreementMember_label_en-US" xlink:label="lab_tyl_CreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Agreement [Member]</link:label>
    <link:label id="lab_tyl_CreditAgreementMember_documentation_en-US" xlink:label="lab_tyl_CreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Agreement.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CreditAgreementMember" xlink:href="tyl-20201231.xsd#tyl_CreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CreditAgreementMember" xlink:to="lab_tyl_CreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_de7b25a8-d9a8-4f6b-8662-3f812c145356_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_NetOperatingLossCarryback_621dea58-890a-4f55-bda3-e42e9c863507_negatedTerseLabel_en-US" xlink:label="lab_tyl_NetOperatingLossCarryback" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net operating loss carryback</link:label>
    <link:label id="lab_tyl_NetOperatingLossCarryback_7e533d9c-3c55-46ad-82d9-a61daa34004e_terseLabel_en-US" xlink:label="lab_tyl_NetOperatingLossCarryback" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net operating loss carryback</link:label>
    <link:label id="lab_tyl_NetOperatingLossCarryback_label_en-US" xlink:label="lab_tyl_NetOperatingLossCarryback" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Operating Loss Carryback</link:label>
    <link:label id="lab_tyl_NetOperatingLossCarryback_documentation_en-US" xlink:label="lab_tyl_NetOperatingLossCarryback" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Operating Loss Carryback</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NetOperatingLossCarryback" xlink:href="tyl-20201231.xsd#tyl_NetOperatingLossCarryback"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NetOperatingLossCarryback" xlink:to="lab_tyl_NetOperatingLossCarryback" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RemainingEstimatedEconomicLife_cb01fbe8-f9af-4402-b282-71a7af0de0e2_terseLabel_en-US" xlink:label="lab_tyl_RemainingEstimatedEconomicLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining estimated economic life</link:label>
    <link:label id="lab_tyl_RemainingEstimatedEconomicLife_label_en-US" xlink:label="lab_tyl_RemainingEstimatedEconomicLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining Estimated Economic Life</link:label>
    <link:label id="lab_tyl_RemainingEstimatedEconomicLife_documentation_en-US" xlink:label="lab_tyl_RemainingEstimatedEconomicLife" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining Estimated Economic Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RemainingEstimatedEconomicLife" xlink:href="tyl-20201231.xsd#tyl_RemainingEstimatedEconomicLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RemainingEstimatedEconomicLife" xlink:to="lab_tyl_RemainingEstimatedEconomicLife" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_SalesCommissionRenewalPeriod_f81a1374-24b4-4a45-b63b-532150e054d1_terseLabel_en-US" xlink:label="lab_tyl_SalesCommissionRenewalPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales commission, renewal period</link:label>
    <link:label id="lab_tyl_SalesCommissionRenewalPeriod_label_en-US" xlink:label="lab_tyl_SalesCommissionRenewalPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales Commission, Renewal Period</link:label>
    <link:label id="lab_tyl_SalesCommissionRenewalPeriod_documentation_en-US" xlink:label="lab_tyl_SalesCommissionRenewalPeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales Commission, Renewal Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SalesCommissionRenewalPeriod" xlink:href="tyl-20201231.xsd#tyl_SalesCommissionRenewalPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SalesCommissionRenewalPeriod" xlink:to="lab_tyl_SalesCommissionRenewalPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_1d975b18-1842-43ad-911e-b03f92668fa2_verboseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_22d19147-a9e6-4597-98ef-163bcecb9cdb_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LIABILITIES AND SHAREHOLDERS' EQUITY</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_63e6377e-7164-49a2-8da1-76ef8bb45586_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payment to be Received, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ac737ce2-9a0d-4ee5-b8a7-33ebecd95504_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_324dc4d0-d12b-4670-859a-1b13931a36c2_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payment to be Received, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_4e130a3f-29ef-48cf-b113-071bf184e218_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_7654677b-55f8-4787-a687-69817d693a67_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Name of each exchange on which registered</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_55124ee1-dfb3-4c1f-b5c4-7d6ec58258e5_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other intangibles, net</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_bdee7312-e631-4a79-9152-3bb1ce249d1c_totalLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total other intangibles, net</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible Assets, Net (Excluding Goodwill)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_12fb5da0-440b-4816-9da7-ecc194c01aa5_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating income</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_a4be9e43-9f36-4548-84d3-e3eba9cc3697_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total segment operating income</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_a710679c-6f42-4240-b222-810d1b761fa0_terseLabel_en-US" xlink:label="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subscriptions, software services and maintenance</link:label>
    <link:label id="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_label_en-US" xlink:label="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software Services, Maintenance and Subscriptions [Member]</link:label>
    <link:label id="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_documentation_en-US" xlink:label="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software Services, Maintenance and Subscriptions [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:href="tyl-20201231.xsd#tyl_SoftwareServicesMaintenanceandSubscriptionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:to="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_cfc069a6-52cf-4728-a279-523a583660f4_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_7cf6c77e-7013-4ff0-a2fe-85c24bb27d58_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of changes in deferred revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransferredOverTimeMember_caaa82ea-e8b2-4fea-a9f8-9883d86246e6_terseLabel_en-US" xlink:label="lab_us-gaap_TransferredOverTimeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Products and services transferred over time</link:label>
    <link:label id="lab_us-gaap_TransferredOverTimeMember_label_en-US" xlink:label="lab_us-gaap_TransferredOverTimeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transferred over Time [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransferredOverTimeMember" xlink:to="lab_us-gaap_TransferredOverTimeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PerformanceSharesMember_40ed2725-cf27-41e6-a8bc-219f82281320_terseLabel_en-US" xlink:label="lab_us-gaap_PerformanceSharesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Shares</link:label>
    <link:label id="lab_us-gaap_PerformanceSharesMember_label_en-US" xlink:label="lab_us-gaap_PerformanceSharesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Shares [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PerformanceSharesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PerformanceSharesMember" xlink:to="lab_us-gaap_PerformanceSharesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateDomain_fbe5e2b8-c324-4dfd-b3e2-04435ce5cf3d_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate</link:label>
    <link:label id="lab_us-gaap_VariableRateDomain_label_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateDomain" xlink:to="lab_us-gaap_VariableRateDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateAxis_7e7ecd17-f62c-4131-afbf-7119f8f12809_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate</link:label>
    <link:label id="lab_us-gaap_VariableRateAxis_label_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateAxis" xlink:to="lab_us-gaap_VariableRateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_2f43ef9f-a269-4b0f-ba11-f81b17eb366e_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Business Acquisitions By Acquisition [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_a171397a-f45c-48a2-8265-f64f86a963fb_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies" xlink:to="lab_us-gaap_CommitmentsAndContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_a0329a3d-2007-4b51-94c4-0c76e9f31cd9_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of employee contribution</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:to="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_6df72d59-66ee-4682-b628-5ce29bfaf08c_terseLabel_en-US" xlink:label="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indemnification</link:label>
    <link:label id="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_label_en-US" xlink:label="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Guarantees, Indemnifications and Warranties Policies [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies" xlink:to="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_127f4f70-e4df-48c2-ad25-5c409e35ced4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee taxes paid for withheld shares for taxes upon equity award settlement</link:label>
    <link:label id="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Decrease for Tax Withholding Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_a5b35571-53b1-48ee-b125-b9787103b9ca_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase of treasury shares</link:label>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_label_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_210dd2ef-6c5f-4754-a684-39f99857c5e5_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_e58b9d09-ef8d-4af1-8a33-e90ecfff620b_verboseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets:</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_52011f0d-bde4-4df3-8dbe-6507e863c429_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Property Plant And Equipment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_854e5da0-00cd-4c48-a932-c5ff5eafc937_terseLabel_en-US" xlink:label="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investment, Name [Axis]</link:label>
    <link:label id="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_label_en-US" xlink:label="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investment, Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_e46eb6ea-a015-4fa6-b53f-86223dbc3b86_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting period (in years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_7df38b7a-9125-4e56-9363-1a576aaeaffb_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_4a915205-8a7a-4ced-97f8-e946fb147722_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_66902dd1-9568-49ae-a141-85c37c0b7aca_terseLabel_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture and fixtures</link:label>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_label_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FurnitureAndFixturesMember" xlink:to="lab_us-gaap_FurnitureAndFixturesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_b766b8fa-ef2e-4597-ae7f-11cf83998300_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance/ Exercise of stock options</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_6534d6b4-ee05-4fed-9a41-3f732ac23455_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_cae4660f-03e0-420f-9116-b49f63493d96_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromStockPlans_06394b5a-8e9d-469a-b514-684e1071f452_verboseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromStockPlans" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contributions from employee stock purchase plan</link:label>
    <link:label id="lab_us-gaap_ProceedsFromStockPlans_label_en-US" xlink:label="lab_us-gaap_ProceedsFromStockPlans" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Stock Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockPlans" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromStockPlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockPlans" xlink:to="lab_us-gaap_ProceedsFromStockPlans" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeasePayments_cedec299-7c76-427e-8685-a8d34a9b0f1f_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating cash outflows from operating leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeasePayments_label_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasePayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments" xlink:to="lab_us-gaap_OperatingLeasePayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_4500f571-c8af-4e63-b895-09152c0adf31_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Federal income tax expense at statutory rate</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:to="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_d1bf64bb-771e-424c-bce6-030eca2b5c42_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_SoftwareLicensesandRoyaltiesMember_9d9d891a-6c05-4995-b227-f296fa69ed23_terseLabel_en-US" xlink:label="lab_tyl_SoftwareLicensesandRoyaltiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software licenses and royalties</link:label>
    <link:label id="lab_tyl_SoftwareLicensesandRoyaltiesMember_label_en-US" xlink:label="lab_tyl_SoftwareLicensesandRoyaltiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software Licenses and Royalties [Member]</link:label>
    <link:label id="lab_tyl_SoftwareLicensesandRoyaltiesMember_documentation_en-US" xlink:label="lab_tyl_SoftwareLicensesandRoyaltiesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software Licenses and Royalties [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareLicensesandRoyaltiesMember" xlink:href="tyl-20201231.xsd#tyl_SoftwareLicensesandRoyaltiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SoftwareLicensesandRoyaltiesMember" xlink:to="lab_tyl_SoftwareLicensesandRoyaltiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_d1dbdc41-8d0e-40ef-8a2d-b50e8d77888b_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ACCRUED LIABILITIES</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_bc9105b5-4661-49f4-ac0c-ef15ea734896_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfLinesOfCredit_4d5e6e4a-7b57-466b-ae1d-46070d44cb5a_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfLinesOfCredit" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Decrease in net borrowings on revolving line of credit</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfLinesOfCredit_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfLinesOfCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repayments of Lines of Credit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfLinesOfCredit" xlink:to="lab_us-gaap_RepaymentsOfLinesOfCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_38ba0772-1789-4f3f-adf0-dcdafcdf7b3d_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_c5f7d513-929d-41f8-a029-13674c79a709_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_d2b9be48-7e0f-433e-b79f-b861b5d35e4b_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Property, Plant and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_71f84afe-dadc-4cb4-bea8-2ac57c2fe4c8_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Goodwill and Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_a59e79bf-88a3-4422-9da4-f1476986d7d7_verboseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortizable intangibles, Weighted Average Amortization Period</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_a507ff08-a6ff-4480-8e6d-eb4d1150d0e1_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_a81306c1-9aaa-4cd3-b840-43e7adb464f4_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury stock purchases (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_b2421ce8-0abe-4a89-bbeb-cded3157acb6_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchases of common stock (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_label_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Shares, Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockSharesAcquired" xlink:to="lab_us-gaap_TreasuryStockSharesAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_b5f4b34f-e24b-4557-959c-3ae2701e7fb9_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding Beginning Balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_1df07270-7b21-4898-a00c-c0486ce7d353_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding Ending Balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_22f6b59d-0c40-487e-b93c-8d5e2fd8126f_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized_57bdad17-9e37-41fa-8e9c-b87e18defe01_negatedTerseLabel_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recognition of deferred revenue</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized_label_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer, Liability, Including New Contract Revenue, Recognized</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized_documentation_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer, Liability, Including New Contract Revenue, Recognized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" xlink:to="lab_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_634e7659-9ff0-4f8f-b528-52a061b37ace_terseLabel_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted stock units vested, net of withheld shares upon award settlement (in shares)</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_label_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_documentation_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" xlink:to="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MajorCustomersAxis_df92a9d1-25b9-4061-b21f-042942263b28_terseLabel_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:label id="lab_srt_MajorCustomersAxis_label_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis" xlink:to="lab_srt_MajorCustomersAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_4e05d791-7893-437f-b6b9-00fba787d1b2_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TaxCreditCarryforwardAmount_bf0e3316-e056-481d-a06c-6b9aacaf862c_terseLabel_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax credit carryforwards</link:label>
    <link:label id="lab_us-gaap_TaxCreditCarryforwardAmount_label_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax Credit Carryforward, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxCreditCarryforwardAmount" xlink:to="lab_us-gaap_TaxCreditCarryforwardAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockValue_a8aead30-d3bc-46f2-8917-d99934bb16a5_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_label_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue" xlink:to="lab_us-gaap_PreferredStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_0f350c3b-4fd4-41ee-b9c6-d05fe9a5dfcc_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxPolicyTextBlock" xlink:to="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_5f4d8fa5-bae4-45de-a734-fa5288e4bbfe_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, cost</link:label>
    <link:label id="lab_us-gaap_LeaseCost_871c3bec-bf94-4076-ae0c-9da0113eff46_totalLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net lease cost</link:label>
    <link:label id="lab_us-gaap_LeaseCost_label_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost" xlink:to="lab_us-gaap_LeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments_b6996ade-57fd-451f-8b9c-d101165534ac_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase of equity investment in common shares</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Equity Method Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireEquityMethodInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:to="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_f91db4c8-0bfb-4c11-b6cb-760be4d9953f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_aad54b36-0e17-4226-b892-ebf7a20d13b4_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_e1bc6a9e-85de-4816-8f63-84f6e52e1b2c_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Decrease (increase) in other</link:label>
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_label_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for (Proceeds from) Other Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:to="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfRevenueAbstract_3b5575ed-7e41-44a9-958d-f42526e554db_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of revenues:</link:label>
    <link:label id="lab_us-gaap_CostOfRevenueAbstract_label_en-US" xlink:label="lab_us-gaap_CostOfRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Revenue [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfRevenueAbstract" xlink:to="lab_us-gaap_CostOfRevenueAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_f3182234-4584-4165-8114-b49936dddfd5_terseLabel_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferral of revenue</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_label_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer, Liability, Increase From Deferral</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_documentation_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract With Customer, Liability, Increase From Deferral</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityIncreaseFromDeferral"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:to="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_81b86b78-3820-4374-b291-07a9fcd64935_terseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Finite Lived Intangible Assets</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_EnterpriseSoftwareMember_de798d98-1aa7-47c0-9f54-7639b0bee211_verboseLabel_en-US" xlink:label="lab_tyl_EnterpriseSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Enterprise Software</link:label>
    <link:label id="lab_tyl_EnterpriseSoftwareMember_3c55bd95-7a36-406c-8969-e045e1308f39_terseLabel_en-US" xlink:label="lab_tyl_EnterpriseSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Enterprise Software</link:label>
    <link:label id="lab_tyl_EnterpriseSoftwareMember_label_en-US" xlink:label="lab_tyl_EnterpriseSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Enterprise Software [Member]</link:label>
    <link:label id="lab_tyl_EnterpriseSoftwareMember_documentation_en-US" xlink:label="lab_tyl_EnterpriseSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Enterprise software.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_EnterpriseSoftwareMember" xlink:to="lab_tyl_EnterpriseSoftwareMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_f876ba50-d7e0-4bf6-9e91-5fc423fac0e3_terseLabel_en-US" xlink:label="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease right-of-use assets - non cash</link:label>
    <link:label id="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_label_en-US" xlink:label="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease Right Of Use Assets Non Cash</link:label>
    <link:label id="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_documentation_en-US" xlink:label="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease Right Of Use Assets Non Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:href="tyl-20201231.xsd#tyl_OperatingLeaseRightOfUseAssetsNonCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:to="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4effa284-a555-4547-91a7-59f11f92bde7_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock compensation</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">APIC, Share-based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_e1301e56-cef4-4138-8bf0-59e6b10553c2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Acquired Finite Lived Intangible Asset By Major Class [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:to="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_2f096560-d30b-43e8-b5ca-fbe9315be0e4_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total revenues</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_2d971514-3ac1-4524-bf68-731e5e717cf7_netLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenues</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityAxis_1155916a-e1e1-4e95-b237-29c5e44f0c2b_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lender Name [Axis]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityAxis_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lender Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis" xlink:to="lab_us-gaap_LineOfCreditFacilityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_31b4265d-0c22-4bce-a885-a53c494387b6_terseLabel_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating expenses not currently deductible</link:label>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_label_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets Operating Expenses Not Currently Deductible</link:label>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_documentation_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets operating expenses not currently deductible.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:href="tyl-20201231.xsd#tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:to="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_7cbea084-eab1-4cea-bc21-ee931f1d6985_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis" xlink:to="lab_us-gaap_BusinessAcquisitionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedContractCostAmortization_8ea248d3-6bfd-4cff-8550-0425e7659227_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred commissions amortization</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostAmortization_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost, Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostAmortization" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostAmortization" xlink:to="lab_us-gaap_CapitalizedContractCostAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_54b92d04-cfff-492a-a936-3d69330e2a7d_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contractual term (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_2f46ec5d-0429-4397-b5e8-71b12b2afc3a_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan Disclosure</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan Disclosure [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_c91cdd69-1844-4c6e-b792-a9faf445f9f3_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_label_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfStockDomain_b87ae447-a9da-492e-9283-6af2e95d9ece_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockDomain_label_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockDomain" xlink:to="lab_us-gaap_ClassOfStockDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_21bd91cf-5fd3-45ce-8575-9eb876ad69c8_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings per common share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Basic and Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:to="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTerm_977a4968-b37c-48c1-aaad-16821b279b93_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Term</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTerm_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTerm" xlink:to="lab_us-gaap_DebtInstrumentTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityVoluntaryFilers_a9f31657-6c1d-4115-9c40-7db4d01ee1de_terseLabel_en-US" xlink:label="lab_dei_EntityVoluntaryFilers" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:label id="lab_dei_EntityVoluntaryFilers_label_en-US" xlink:label="lab_dei_EntityVoluntaryFilers" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityVoluntaryFilers" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityVoluntaryFilers"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityVoluntaryFilers" xlink:to="lab_dei_EntityVoluntaryFilers" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_7c336470-567a-460b-95c2-710d4f60ae5f_verboseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisition related fees</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Acquisition Related Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:to="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_201dd707-e6be-4b83-9f29-ebe71d05a7ec_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_label_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_93077d45-f8e0-47be-a577-8d19154fd413_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization expense, thereafter</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_f5298bea-9695-4f07-bde4-c90f16a21b8a_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_MicroPactAndMyCivicMember_2fdddbff-c073-4d98-8e78-c09e401069a2_terseLabel_en-US" xlink:label="lab_tyl_MicroPactAndMyCivicMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MicroPact And MyCivic</link:label>
    <link:label id="lab_tyl_MicroPactAndMyCivicMember_label_en-US" xlink:label="lab_tyl_MicroPactAndMyCivicMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MicroPact And MyCivic [Member]</link:label>
    <link:label id="lab_tyl_MicroPactAndMyCivicMember_documentation_en-US" xlink:label="lab_tyl_MicroPactAndMyCivicMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MicroPact And MyCivic [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MicroPactAndMyCivicMember" xlink:href="tyl-20201231.xsd#tyl_MicroPactAndMyCivicMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_MicroPactAndMyCivicMember" xlink:to="lab_tyl_MicroPactAndMyCivicMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_689720ec-202e-4f21-8e96-29659540b16f_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityAxis_505b3913-8ef2-421d-bf48-0f21588d9629_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility</link:label>
    <link:label id="lab_us-gaap_CreditFacilityAxis_label_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityAxis" xlink:to="lab_us-gaap_CreditFacilityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_c18bcfaf-1f79-4abb-a7a3-c0ee34309517_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares issued (shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued" xlink:to="lab_us-gaap_PreferredStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_UnusualOrInfrequentItemOrBothExpenses_8d515767-7ebf-46f6-9bfc-cbad871e9c2b_terseLabel_en-US" xlink:label="lab_tyl_UnusualOrInfrequentItemOrBothExpenses" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unusual expenses</link:label>
    <link:label id="lab_tyl_UnusualOrInfrequentItemOrBothExpenses_label_en-US" xlink:label="lab_tyl_UnusualOrInfrequentItemOrBothExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unusual or Infrequent Item, or Both, Expenses</link:label>
    <link:label id="lab_tyl_UnusualOrInfrequentItemOrBothExpenses_documentation_en-US" xlink:label="lab_tyl_UnusualOrInfrequentItemOrBothExpenses" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unusual or Infrequent Item, or Both, Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_UnusualOrInfrequentItemOrBothExpenses" xlink:href="tyl-20201231.xsd#tyl_UnusualOrInfrequentItemOrBothExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_UnusualOrInfrequentItemOrBothExpenses" xlink:to="lab_tyl_UnusualOrInfrequentItemOrBothExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_GoodwillAssessedForImpairment_45ebeb45-7fe1-45e8-b9ca-7b757db0e9ce_terseLabel_en-US" xlink:label="lab_tyl_GoodwillAssessedForImpairment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill assessed for impairment</link:label>
    <link:label id="lab_tyl_GoodwillAssessedForImpairment_label_en-US" xlink:label="lab_tyl_GoodwillAssessedForImpairment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill Assessed For Impairment</link:label>
    <link:label id="lab_tyl_GoodwillAssessedForImpairment_documentation_en-US" xlink:label="lab_tyl_GoodwillAssessedForImpairment" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill Assessed For Impairment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_GoodwillAssessedForImpairment" xlink:href="tyl-20201231.xsd#tyl_GoodwillAssessedForImpairment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_GoodwillAssessedForImpairment" xlink:to="lab_tyl_GoodwillAssessedForImpairment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_540aebcb-fb8d-44d4-a897-ade2891ad1e5_totalLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_8cde1fb7-5f20-4ba0-8c0e-eb461eb0a5e8_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsAbstract" xlink:to="lab_us-gaap_BusinessCombinationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_45391df2-7b02-4183-80a1-0ff69cd29fcf_terseLabel_en-US" xlink:label="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted stock unit and performance stock unit</link:label>
    <link:label id="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_label_en-US" xlink:label="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Unit and Performance Stock Unit [Member]</link:label>
    <link:label id="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_documentation_en-US" xlink:label="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Unit and Performance Stock Unit [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:href="tyl-20201231.xsd#tyl_RestrictedStockUnitandPerformanceStockUnitMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:to="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntitySmallBusiness_b9a9f68c-9e19-4b64-b3ce-fbab0eda8db8_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_label_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntitySmallBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConsolidationPolicyTextBlock_2ea7a708-b2a9-42c4-b1f3-4b9ed2bd3bd1_terseLabel_en-US" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Principles of Consolidation</link:label>
    <link:label id="lab_us-gaap_ConsolidationPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConsolidationPolicyTextBlock" xlink:to="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_53f61ef6-5530-444c-a866-d8de4a682147_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Year ending December 31,</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payment, Due [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_45335301-4833-41ff-b07e-5b97886b77fb_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_dca15451-7bea-480f-8648-3b2629d1e110_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">REVOLVING LINE OF CREDIT</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureTextBlock" xlink:to="lab_us-gaap_DebtDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_f28b864c-d8b2-4d9f-8191-8ac82eb42a65_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase of held to maturity securities</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Held-to-maturity Securities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities" xlink:to="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_c5d7d8ab-f7c3-44e7-a951-5953eaa5ed95_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Remaining Contractual Life (Years), Exercisable</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseCurrent_7ae6a780-17b8-4c05-bbdd-1c73b7f5548c_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid Expense, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseCurrent" xlink:to="lab_us-gaap_PrepaidExpenseCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_e4c6a8d4-69e2-4b2c-963c-29874f22a9de_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of future minimum operating rental income</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Lease Income [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLeaseIncomeTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:to="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_ce7e8786-d4e1-4c2c-8ce3-446fa01d6b9c_terseLabel_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_label_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Payment Term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_documentation_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Payment Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerPaymentTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:to="lab_tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_314d50e8-0c46-420c-8fdf-a79adc1861fe_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general and administrative expenses</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillRollForward_73efc049-0b0f-46d2-a0d2-c6f66b6fe1b1_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_GoodwillRollForward_label_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillRollForward" xlink:to="lab_us-gaap_GoodwillRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_22681fff-4061-4534-88b3-5e163f7c16be_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_7b216312-2ff1-4dfc-81a8-6540dc30e3fb_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Computation of basic earnings and diluted earnings per share data</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_65f9a0e1-2dc3-41fc-b40e-1f80af142dda_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Shares</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_4c7dc33c-3317-48d7-90dc-1dbfd8b6a9de_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summarizes restricted stock unit and performance share activity</link:label>
    <link:label id="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_label_en-US" xlink:label="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disclosure of Share-based Compensation Arrangements by Share-based Payment Award [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:to="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_52ec8c38-d847-41b4-81a7-c20dc3e262b6_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite Lived Intangible Assets Major Class Name</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_HardwareandOtherMember_3ab53cb0-e142-417b-9998-73998faeec95_terseLabel_en-US" xlink:label="lab_tyl_HardwareandOtherMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hardware and other</link:label>
    <link:label id="lab_tyl_HardwareandOtherMember_00f5e1aa-f95c-4ee6-828b-76116d18f8dc_verboseLabel_en-US" xlink:label="lab_tyl_HardwareandOtherMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hardware and other</link:label>
    <link:label id="lab_tyl_HardwareandOtherMember_label_en-US" xlink:label="lab_tyl_HardwareandOtherMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hardware and Other [Member]</link:label>
    <link:label id="lab_tyl_HardwareandOtherMember_documentation_en-US" xlink:label="lab_tyl_HardwareandOtherMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hardware and Other [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_HardwareandOtherMember" xlink:href="tyl-20201231.xsd#tyl_HardwareandOtherMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_HardwareandOtherMember" xlink:to="lab_tyl_HardwareandOtherMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_844d8b3f-2737-4578-aa1a-21430a756049_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares reserved for future issuance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_f7da58e0-fd8b-43aa-8ae6-5326510424e3_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate</link:label>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_label_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate, Non-Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateNonSegmentMember" xlink:to="lab_us-gaap_CorporateNonSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_59a96c3d-3d29-4204-a2dc-6189c46d982c_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of shares available for grant (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_723840cc-acf3-471d-be26-a9213580ce90_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other accrued liabilities</link:label>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RentalIncomeNonoperating_bac649e5-e7a0-4364-8185-5a22900c7552_verboseLabel_en-US" xlink:label="lab_us-gaap_RentalIncomeNonoperating" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rental income</link:label>
    <link:label id="lab_us-gaap_RentalIncomeNonoperating_label_en-US" xlink:label="lab_us-gaap_RentalIncomeNonoperating" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rental Income, Nonoperating</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RentalIncomeNonoperating" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RentalIncomeNonoperating"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RentalIncomeNonoperating" xlink:to="lab_us-gaap_RentalIncomeNonoperating" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_95c2a590-f252-4077-89fd-dd9553d70924_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_40e8afe3-12ee-4150-a6ae-bdcf57e75435_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billing Status, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_label_en-US" xlink:label="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billing Status, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis" xlink:to="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_e71959bc-83c4-4f47-93a8-8a2e11fa4d20_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_e9ce3259-fb06-4e29-a596-74d380d90a7a_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term line of credit</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Current Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_5fe3bcaa-7ee3-4258-895f-47fbecd638d4_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and development expense</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and Development Expense, Software (Excluding Acquired in Process Cost)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_308d2cdf-7c8e-4afd-b8aa-d418e1ab55bc_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities, Current [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_e9e1041a-9154-46cd-99ce-28e22072f9d2_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_d1da34c2-ebf2-49ff-8f1d-ead00388e8ec_terseLabel_en-US" xlink:label="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized post acquisition software development costs</link:label>
    <link:label id="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_label_en-US" xlink:label="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Post Acquisition Software Development Costs</link:label>
    <link:label id="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_documentation_en-US" xlink:label="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Post Acquisition Software Development Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:href="tyl-20201231.xsd#tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:to="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForCapitalImprovements_5abdce33-9359-46d8-bc67-dcb3ff4c52d9_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForCapitalImprovements" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment for construction to expand building</link:label>
    <link:label id="lab_us-gaap_PaymentsForCapitalImprovements_label_en-US" xlink:label="lab_us-gaap_PaymentsForCapitalImprovements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Capital Improvements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForCapitalImprovements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForCapitalImprovements" xlink:to="lab_us-gaap_PaymentsForCapitalImprovements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_f66d2df8-d1b3-46f2-ac46-42de1af300fc_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of other intangible assets and related accumulated amortization</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_38d992cf-7303-434a-a787-f1e91200d5db_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SUBSEQUENT EVENTS</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsTextBlock" xlink:to="lab_us-gaap_SubsequentEventsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_15cbb8a0-0e75-4b88-a2b0-d577209185ba_terseLabel_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average grant date value (in dollars per share)</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_label_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_documentation_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share based compensation arrangement by share based payment award options nonvested weighted average exercise price.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:to="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDomain_0c4d5991-6cca-4c68-980d-d8d97fad09bc_verboseLabel_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentDomain_label_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDomain" xlink:to="lab_us-gaap_SegmentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_12697410-1d61-47eb-b930-dcb9022b1076_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease renewal term (up to)</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Renewal Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:to="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_76eb8bfa-4bf0-4b38-bbdc-af19cedff1b1_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total unrecognized compensation cost</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_27f78366-a348-4b77-97b9-ed29022aaa11_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income tax assets:</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_a32f46aa-74bd-43ac-be5b-caee3ca967b5_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_6112a90d-6165-417b-9ea0-058a53cbb950_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_f2289392-359f-4e41-b317-8574404f1796_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_d61b7769-ad60-493e-91f5-5675277e1860_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property Plant And Equipment By Type</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeStockMember_8196aaa6-eb56-4705-a0c1-81f80f123764_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee Stock Purchase Plan</link:label>
    <link:label id="lab_us-gaap_EmployeeStockMember_label_en-US" xlink:label="lab_us-gaap_EmployeeStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockMember" xlink:to="lab_us-gaap_EmployeeStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_cdf17d54-f1cf-44fa-a875-003fa5362484_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_6ee73164-e3ee-483e-9db8-dce8057a1ea8_verboseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable, allowance for doubtful accounts</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_7d3d543e-a3cb-4d44-8cbd-b4078b15c95a_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable, allowance for losses</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedContractCostLineItems_074d7099-ca77-4fe1-aeb1-8989a3e04408_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostLineItems_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems" xlink:to="lab_us-gaap_CapitalizedContractCostLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_db01b50d-6a72-4ff8-bd35-527023998d4f_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_d2a14ed6-49aa-4a68-ae07-40ccf48cec89_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_12048eb4-9c35-4219-bdb8-1d630b808980_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_30d19fae-8d14-489d-82ea-abb1468fd97f_terseLabel_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_label_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State and Local Jurisdiction [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StateAndLocalJurisdictionMember" xlink:to="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_f65d08dd-8f9d-4052-83c2-2102bd6821d6_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_0799384b-7145-409e-8016-1d9f8b685f9d_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general and administrative expenses</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_4834f922-ada6-4b9c-8aac-158f29e1038c_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Federal Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_cbbde9e4-fe26-4e02-90bf-f1b08df884ca_verboseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total amortization expense</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_f5abb155-41f0-4c3e-877c-66e902722ee7_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Tax Deferred Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsDeferredIncome_d0cf70a3-d41d-4d82-8fa7-f538584aecf4_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsDeferredIncome" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsDeferredIncome_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsDeferredIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Deferred Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsDeferredIncome" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsDeferredIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsDeferredIncome" xlink:to="lab_us-gaap_DeferredTaxAssetsDeferredIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_f169d3e9-cc21-456e-ab32-dcda4d7d1830_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of lease cost</link:label>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock" xlink:to="lab_us-gaap_LeaseCostTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_b68744ef-33d0-4a66-842a-55482392b6dd_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility [Table]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityTable" xlink:to="lab_us-gaap_LineOfCreditFacilityTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_3ab6618d-a180-40bf-b5fa-5b0ffc5ac867_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_1ebc73a3-cdec-471f-a933-86884dbd1ab9_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer related intangibles</link:label>
    <link:label id="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_934e045d-5fd1-4149-8ed3-367957aff622_verboseLabel_en-US" xlink:label="lab_us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer related intangibles</link:label>
    <link:label id="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_label_en-US" xlink:label="lab_us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer-Related Intangible Assets [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:to="lab_us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_d8d199bd-55eb-465c-b2cf-719794a092f4_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other non-current assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_AccountingPoliciesLineItems_ae2df269-39c1-49a8-b321-ebc7ee75cc5e_terseLabel_en-US" xlink:label="lab_tyl_AccountingPoliciesLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies</link:label>
    <link:label id="lab_tyl_AccountingPoliciesLineItems_label_en-US" xlink:label="lab_tyl_AccountingPoliciesLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Line Items]</link:label>
    <link:label id="lab_tyl_AccountingPoliciesLineItems_documentation_en-US" xlink:label="lab_tyl_AccountingPoliciesLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting policies.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AccountingPoliciesLineItems" xlink:href="tyl-20201231.xsd#tyl_AccountingPoliciesLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AccountingPoliciesLineItems" xlink:to="lab_tyl_AccountingPoliciesLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_51c901cd-888e-4151-a6cd-b94668d3b0ef_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SEGMENT AND RELATED INFORMATION</link:label>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_bdbf17d3-5f76-4416-b001-f2e9c48628db_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_66b6572a-d330-4b4e-8d31-f94a30a9b37a_terseLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_label_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementScenarioAxis_3dfec495-ea8c-46c3-b754-2454a14b82fa_terseLabel_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:label id="lab_srt_StatementScenarioAxis_label_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementScenarioAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementScenarioAxis" xlink:to="lab_srt_StatementScenarioAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_51b349f4-27f0-440c-91ae-46002ca12cd8_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_5ccc97bc-71d3-4a37-8efa-f389c903f165_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_28ec7cfb-20ed-4a41-a983-7075eb7e5224_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of each class</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_f8f05a15-78c6-42ed-8231-093e5989860b_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of accrued liabilities</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accrued Liabilities [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReportingUnitDomain_44fbab9e-8f0e-41d4-97b8-3e0436322fd0_terseLabel_en-US" xlink:label="lab_us-gaap_ReportingUnitDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reporting Unit [Domain]</link:label>
    <link:label id="lab_us-gaap_ReportingUnitDomain_label_en-US" xlink:label="lab_us-gaap_ReportingUnitDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reporting Unit [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReportingUnitDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReportingUnitDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReportingUnitDomain" xlink:to="lab_us-gaap_ReportingUnitDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_ec043bcf-be16-4b01-9d02-48e35c8a2c70_totalLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-lived intangible assets, net</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_7d51fadd-b787-4f15-80ae-8484a1010097_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_e63aefe9-cb91-4d46-98a9-c24e470f0064_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis" xlink:to="lab_us-gaap_SubsequentEventTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_ea37a146-bcbe-4a97-8a0e-4aca97580bc5_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LEASES</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasesOfLessorDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock" xlink:to="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_a8c45c0a-660b-4629-af8c-32def99a7a8e_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payment to be Received, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskCreditRisk_a4fce7c8-36d8-4c95-849b-28d789e0ca69_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentrations of Credit Risk</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskCreditRisk_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk, Credit Risk, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskCreditRisk" xlink:to="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_2c2ab016-9a93-4389-8bd5-b4018d2f9aac_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of shares authorized to be repurchased (in shares)</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Repurchase Program, Number of Shares Authorized to be Repurchased</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:to="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_b00c543c-8771-478a-bd00-925d08231feb_terseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_cbc11b40-2e37-4fa4-8c31-48c22340888c_verboseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation and amortization expense</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_label_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_5918feb3-9efe-45c4-96b1-df1f304f648c_terseLabel_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected forfeiture rate (in percentage)</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_label_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_documentation_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based compensation arrangement by share-based payment award, fair value assumptions, expected forfeiture rate.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:to="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_7d30f50f-cb07-4a68-9aa8-0b178a85ee2d_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of income tax (benefit) provision on income from operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_732fc648-0139-4666-bf54-1f2ce7b05324_verboseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash acquired</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_19514ed7-785f-4563-b959-de76e8376d63_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase of liability for an uncertain tax position</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits, Period Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductOrServiceAxis_2cc7aec9-092a-454a-9008-20b8db5c03ca_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_SoftwareAcquiredMember_a16e00ba-b96a-4e84-86b9-1b9d9ed7a9b7_terseLabel_en-US" xlink:label="lab_tyl_SoftwareAcquiredMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired software</link:label>
    <link:label id="lab_tyl_SoftwareAcquiredMember_c0bf0328-03b7-48b8-94c9-10e755ea3647_verboseLabel_en-US" xlink:label="lab_tyl_SoftwareAcquiredMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired software</link:label>
    <link:label id="lab_tyl_SoftwareAcquiredMember_label_en-US" xlink:label="lab_tyl_SoftwareAcquiredMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software Acquired [Member]</link:label>
    <link:label id="lab_tyl_SoftwareAcquiredMember_documentation_en-US" xlink:label="lab_tyl_SoftwareAcquiredMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software acquired.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareAcquiredMember" xlink:href="tyl-20201231.xsd#tyl_SoftwareAcquiredMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SoftwareAcquiredMember" xlink:to="lab_tyl_SoftwareAcquiredMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_BFTRLLCMember_3bc162e4-46e1-45ce-9fcc-f292d2594423_terseLabel_en-US" xlink:label="lab_tyl_BFTRLLCMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BFTR, LLC</link:label>
    <link:label id="lab_tyl_BFTRLLCMember_label_en-US" xlink:label="lab_tyl_BFTRLLCMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BFTR, LLC [Member]</link:label>
    <link:label id="lab_tyl_BFTRLLCMember_documentation_en-US" xlink:label="lab_tyl_BFTRLLCMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BFTR, LLC</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BFTRLLCMember" xlink:href="tyl-20201231.xsd#tyl_BFTRLLCMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_BFTRLLCMember" xlink:to="lab_tyl_BFTRLLCMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_f25774e0-de70-47db-81b5-355b389f9f3c_terseLabel_en-US" xlink:label="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of customer and trade name intangibles</link:label>
    <link:label id="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_131dc5a9-8e39-4be7-8a6e-6be765a6b59f_negatedLabel_en-US" xlink:label="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of customer and trade name intangibles</link:label>
    <link:label id="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_label_en-US" xlink:label="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Customer and Trade Names Intangible Assets</link:label>
    <link:label id="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_documentation_en-US" xlink:label="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Customer and Trade Names Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:href="tyl-20201231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:to="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransferredAtPointInTimeMember_a3916f40-07a1-4886-a6e6-1faa8ff3908c_terseLabel_en-US" xlink:label="lab_us-gaap_TransferredAtPointInTimeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Products and services transferred at a point in time</link:label>
    <link:label id="lab_us-gaap_TransferredAtPointInTimeMember_label_en-US" xlink:label="lab_us-gaap_TransferredAtPointInTimeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transferred at Point in Time [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransferredAtPointInTimeMember" xlink:to="lab_us-gaap_TransferredAtPointInTimeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_05236fc7-6a83-41bb-aa2b-95d742edb004_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average amortization period</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_8d7ce23e-880b-45bc-9ce0-586e5a67fc4e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Interest</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_fd5416a5-5d61-4b58-8645-4462e4032270_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_82bc7a67-6232-4e1b-86ae-bde28775560b_terseLabel_en-US" xlink:label="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments from the 2017 Tax Cuts and Jobs Act</link:label>
    <link:label id="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax Cuts and Jobs Act, Measurement Period Adjustment, Income Tax Expense (Benefit)</link:label>
    <link:label id="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_documentation_en-US" xlink:label="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax Cuts and Jobs Act, Measurement Period Adjustment, Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:href="tyl-20201231.xsd#tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:to="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember_49c3c694-1d12-45de-9f84-074545795a7b_terseLabel_en-US" xlink:label="lab_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Case Management, Business Process Management, Data And Insight</link:label>
    <link:label id="lab_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember_label_en-US" xlink:label="lab_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Case Management, Business Process Management, Data And Insight [Member]</link:label>
    <link:label id="lab_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember_documentation_en-US" xlink:label="lab_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Case Management, Business Process Management, Data And Insight</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember" xlink:href="tyl-20201231.xsd#tyl_CaseManagementBusinessProcessManagementDataAndInsightMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember" xlink:to="lab_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_NonrecurringRevenueMember_3c5086e8-99ab-4125-be66-f762fcb392e0_terseLabel_en-US" xlink:label="lab_tyl_NonrecurringRevenueMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-recurring revenues</link:label>
    <link:label id="lab_tyl_NonrecurringRevenueMember_label_en-US" xlink:label="lab_tyl_NonrecurringRevenueMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-recurring Revenue [Member]</link:label>
    <link:label id="lab_tyl_NonrecurringRevenueMember_documentation_en-US" xlink:label="lab_tyl_NonrecurringRevenueMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-recurring Revenue [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NonrecurringRevenueMember" xlink:href="tyl-20201231.xsd#tyl_NonrecurringRevenueMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NonrecurringRevenueMember" xlink:to="lab_tyl_NonrecurringRevenueMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_152e4b19-5844-43dd-86e9-2408a0d59a83_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_17340b46-e24b-44e0-8adf-7350e186606c_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_DataAndInsightMember_0e59f1ba-7a5d-442b-ba10-33e40f3a6adf_terseLabel_en-US" xlink:label="lab_tyl_DataAndInsightMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Data And Insight</link:label>
    <link:label id="lab_tyl_DataAndInsightMember_label_en-US" xlink:label="lab_tyl_DataAndInsightMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Data And Insight [Member]</link:label>
    <link:label id="lab_tyl_DataAndInsightMember_documentation_en-US" xlink:label="lab_tyl_DataAndInsightMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Data And Insight</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DataAndInsightMember" xlink:href="tyl-20201231.xsd#tyl_DataAndInsightMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_DataAndInsightMember" xlink:to="lab_tyl_DataAndInsightMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RetentionReceivableMember_36e6c651-4c6b-4b8b-8719-4f0a6edd775e_terseLabel_en-US" xlink:label="lab_tyl_RetentionReceivableMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retention Receivable</link:label>
    <link:label id="lab_tyl_RetentionReceivableMember_label_en-US" xlink:label="lab_tyl_RetentionReceivableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retention Receivable [Member]</link:label>
    <link:label id="lab_tyl_RetentionReceivableMember_documentation_en-US" xlink:label="lab_tyl_RetentionReceivableMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retention Receivable [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RetentionReceivableMember" xlink:href="tyl-20201231.xsd#tyl_RetentionReceivableMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RetentionReceivableMember" xlink:to="lab_tyl_RetentionReceivableMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_60c0cf36-9d71-40d0-8f53-8b5f76905128_terseLabel_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_label_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:to="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_AcquiredSoftwareMember_a200b10a-2a5b-42a4-aea8-ed507115b597_terseLabel_en-US" xlink:label="lab_tyl_AcquiredSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired software</link:label>
    <link:label id="lab_tyl_AcquiredSoftwareMember_label_en-US" xlink:label="lab_tyl_AcquiredSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Software [Member]</link:label>
    <link:label id="lab_tyl_AcquiredSoftwareMember_documentation_en-US" xlink:label="lab_tyl_AcquiredSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Software [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AcquiredSoftwareMember" xlink:href="tyl-20201231.xsd#tyl_AcquiredSoftwareMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AcquiredSoftwareMember" xlink:to="lab_tyl_AcquiredSoftwareMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_03c0b453-9b1e-4358-8a6c-fcef8217ade2_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_ab0225ab-3100-400a-8cd5-e42b0879f5d1_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_e9ad3fa6-cd85-42e1-a01e-2f891feb6f6f_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of quarterly financial information</link:label>
    <link:label id="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quarterly Financial Information [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_af3b215b-75a0-4221-a72d-d17e8573ef1a_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating segments</link:label>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_label_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Segments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingSegmentsMember" xlink:to="lab_us-gaap_OperatingSegmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_90f8b63a-94da-4ec5-ae9d-111cd3557a74_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfStockLineItems_9d3bb473-a39f-4519-b8c8-ddd85d4d04a0_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class Of Stock [Line Items]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockLineItems_label_en-US" xlink:label="lab_us-gaap_ClassOfStockLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockLineItems" xlink:to="lab_us-gaap_ClassOfStockLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_a3a2c938-779e-49e4-9b79-c9a38fdccf39_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_dbebda79-fe21-4995-bd67-3ac4e7d21caf_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury stock purchases</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_cc2bcc8e-71ed-4c5e-8ff8-47f64a94f437_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchases of common stock</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Value, Acquired, Cost Method</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:to="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharesIssued_f1074a75-9c0f-4401-b5b5-39acc1b04dd2_periodStartLabel_en-US" xlink:label="lab_us-gaap_SharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance, shares</link:label>
    <link:label id="lab_us-gaap_SharesIssued_5e1db265-e747-42b3-871b-bb4e144b5430_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance, shares</link:label>
    <link:label id="lab_us-gaap_SharesIssued_label_en-US" xlink:label="lab_us-gaap_SharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesIssued" xlink:to="lab_us-gaap_SharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_170e61cd-e70a-4532-8583-ab2b4a9c48ca_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to reconcile net income to cash provided by operations:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_BuildingAndLeaseholdImprovementsMember_063f7128-1299-485c-8d8d-bfe80db7205f_terseLabel_en-US" xlink:label="lab_tyl_BuildingAndLeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Building and leasehold improvements</link:label>
    <link:label id="lab_tyl_BuildingAndLeaseholdImprovementsMember_label_en-US" xlink:label="lab_tyl_BuildingAndLeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Building And Leasehold Improvements [Member]</link:label>
    <link:label id="lab_tyl_BuildingAndLeaseholdImprovementsMember_documentation_en-US" xlink:label="lab_tyl_BuildingAndLeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Building and leasehold improvements.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BuildingAndLeaseholdImprovementsMember" xlink:href="tyl-20201231.xsd#tyl_BuildingAndLeaseholdImprovementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_BuildingAndLeaseholdImprovementsMember" xlink:to="lab_tyl_BuildingAndLeaseholdImprovementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_9f11e4bf-de30-4239-8413-901a91b5b6d0_terseLabel_en-US" xlink:label="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs of Computer Software</link:label>
    <link:label id="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_label_en-US" xlink:label="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software to be Sold, Leased, or Otherwise Marketed, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" xlink:to="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_36ef567e-9cbf-4b98-b7ab-286b5b484f09_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_d6a5453e-ccb2-4d94-866d-ea1591087110_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_9e02541a-0936-4775-842c-46805b982944_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value of Financial Instruments</link:label>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_label_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_44f32e09-8c5d-4a93-8c1a-d6794e99aeb3_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableLeaseCost_44060999-4dc1-4a2f-9388-537211867eb2_terseLabel_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable lease cost</link:label>
    <link:label id="lab_us-gaap_VariableLeaseCost_label_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableLeaseCost" xlink:to="lab_us-gaap_VariableLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_BusinessAcquisitionOptionConversionPrice_952c0292-0a3c-454e-a94f-7eea93ea12d8_terseLabel_en-US" xlink:label="lab_tyl_BusinessAcquisitionOptionConversionPrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Option conversion price (per share)</link:label>
    <link:label id="lab_tyl_BusinessAcquisitionOptionConversionPrice_label_en-US" xlink:label="lab_tyl_BusinessAcquisitionOptionConversionPrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Option Conversion Price</link:label>
    <link:label id="lab_tyl_BusinessAcquisitionOptionConversionPrice_documentation_en-US" xlink:label="lab_tyl_BusinessAcquisitionOptionConversionPrice" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Option Conversion Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BusinessAcquisitionOptionConversionPrice" xlink:href="tyl-20201231.xsd#tyl_BusinessAcquisitionOptionConversionPrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_BusinessAcquisitionOptionConversionPrice" xlink:to="lab_tyl_BusinessAcquisitionOptionConversionPrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_bd5ca216-2400-4797-9643-6672a0c9c1f9_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State income tax, net of federal income tax benefit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:to="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_29a4984e-ceb5-470f-99d3-41f7b282a8ad_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Goodwill [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable" xlink:to="lab_us-gaap_ScheduleOfGoodwillTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_cceba23a-ce19-49fc-a8d4-a3b560e75f1b_terseLabel_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility</link:label>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_label_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevolvingCreditFacilityMember" xlink:to="lab_us-gaap_RevolvingCreditFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReceivable_46edfeb1-51c0-43e1-91a0-15f6cfa5b68a_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReceivable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax receivable</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReceivable_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReceivable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReceivable" xlink:to="lab_us-gaap_IncomeTaxReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_1099d6bf-afd0-49ec-98e6-fe2aabf6ec86_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_ffc857df-7646-460a-a2c4-32d595c8556b_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventMember_491eeb8a-6435-4419-8f64-0267ff2f62b2_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event</link:label>
    <link:label id="lab_us-gaap_SubsequentEventMember_label_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember" xlink:to="lab_us-gaap_SubsequentEventMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_29bd1b6e-3d7b-4118-a710-b8e54631c2ca_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding Beginning Balance (in dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_1a27b870-cd51-433b-be80-72022ed61785_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding Ending Balance (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_39406d2e-71f6-4d23-baf0-fb1f3f220572_terseLabel_en-US" xlink:label="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted stock units vested, net of withheld shares upon award settlement</link:label>
    <link:label id="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_label_en-US" xlink:label="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_documentation_en-US" xlink:label="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" xlink:href="tyl-20201231.xsd#tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" xlink:to="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DomesticCountryMember_5fb55b83-de4f-4d35-ad18-2c82e0a61a28_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_DomesticCountryMember_label_en-US" xlink:label="lab_us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic Tax Authority [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DomesticCountryMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticCountryMember" xlink:to="lab_us-gaap_DomesticCountryMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_943ad831-f641-4654-9e8a-237a57422da4_terseLabel_en-US" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassifications</link:label>
    <link:label id="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_label_en-US" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification, Comparability Adjustment [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:to="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LettersOfCreditOutstandingAmount_49e19a8f-b262-4845-a967-13c40e531c0a_terseLabel_en-US" xlink:label="lab_us-gaap_LettersOfCreditOutstandingAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Letter of credit outstanding</link:label>
    <link:label id="lab_us-gaap_LettersOfCreditOutstandingAmount_label_en-US" xlink:label="lab_us-gaap_LettersOfCreditOutstandingAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Letters of Credit Outstanding, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LettersOfCreditOutstandingAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LettersOfCreditOutstandingAmount" xlink:to="lab_us-gaap_LettersOfCreditOutstandingAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_8ef61287-7a28-4ccc-ada6-a67fb5466def_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of acquisitions, net of cash acquired</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_3b2cb31e-4a44-46d5-8990-74c5e505c66c_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares authorized (shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_a22297f9-c9a1-4838-bae9-770768059616_terseLabel_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based awards (in shares)</link:label>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_label_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_2724d6f7-27b4-4d9f-8e25-713e88088fb2_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment, gross</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromStockOptionsExercised_a4aae70d-1f46-4a85-95f9-c9214bef80eb_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from exercise of stock options</link:label>
    <link:label id="lab_us-gaap_ProceedsFromStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Stock Options Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockOptionsExercised" xlink:to="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_ae9045f1-b260-4cd5-a730-ca237a136e11_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of segment revenues and operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_f24a38f5-2a14-404e-8529-954aa20bc390_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairments of long-lived assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of Long-Lived Assets Held-for-use</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:to="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_CourthouseTechnologiesLtdMember_c730ce27-26dc-4f92-9a19-b979b9b9b438_terseLabel_en-US" xlink:label="lab_tyl_CourthouseTechnologiesLtdMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Courthouse Technologies, Ltd</link:label>
    <link:label id="lab_tyl_CourthouseTechnologiesLtdMember_label_en-US" xlink:label="lab_tyl_CourthouseTechnologiesLtdMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Courthouse Technologies, Ltd [Member]</link:label>
    <link:label id="lab_tyl_CourthouseTechnologiesLtdMember_documentation_en-US" xlink:label="lab_tyl_CourthouseTechnologiesLtdMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Courthouse Technologies, Ltd [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CourthouseTechnologiesLtdMember" xlink:href="tyl-20201231.xsd#tyl_CourthouseTechnologiesLtdMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CourthouseTechnologiesLtdMember" xlink:to="lab_tyl_CourthouseTechnologiesLtdMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_MergerSubMember_6b709c50-2c9a-420f-9e91-fc6ae709802e_terseLabel_en-US" xlink:label="lab_tyl_MergerSubMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Merger Sub</link:label>
    <link:label id="lab_tyl_MergerSubMember_label_en-US" xlink:label="lab_tyl_MergerSubMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Merger Sub [Member]</link:label>
    <link:label id="lab_tyl_MergerSubMember_documentation_en-US" xlink:label="lab_tyl_MergerSubMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Merger Sub</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MergerSubMember" xlink:href="tyl-20201231.xsd#tyl_MergerSubMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_MergerSubMember" xlink:to="lab_tyl_MergerSubMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_db7501bb-299a-4e97-9217-1f7bdf6c0850_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_18f507cf-2e97-4f7f-ba7c-76f59ae872d4_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss)</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_394567e9-7bca-4c63-b5c9-b62032b1ac4f_terseLabel_en-US" xlink:label="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_label_en-US" xlink:label="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) In Operating Lease Liabilities</link:label>
    <link:label id="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_documentation_en-US" xlink:label="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) In Operating Lease Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:href="tyl-20201231.xsd#tyl_IncreaseDecreaseInOperatingLeaseLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:to="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_2d3344a7-78eb-4ed0-a18f-a60a00bd993a_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities, long-term</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_f1214dbf-c042-47f5-9174-19819872286e_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating leases, long-term</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_8f2da3a0-5c6e-443f-aa2c-726a9d578177_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization expense, 2024</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_c2491d34-1faa-4917-8abb-3343109e03f3_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_0c8fd3ad-70c7-44f9-b02d-5fc91c1d05d8_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_c2c8f2a6-f82a-45db-b1fe-91f0a5c701e0_terseLabel_en-US" xlink:label="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Numerator for basic and diluted earnings per share:</link:label>
    <link:label id="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_label_en-US" xlink:label="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Numerator of Basic and Diluted Earnings Per Share [Abstract]</link:label>
    <link:label id="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_documentation_en-US" xlink:label="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Numerator of Basic and Diluted Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" xlink:href="tyl-20201231.xsd#tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" xlink:to="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestReceivable_cf57c476-3991-4245-9dc4-d292f2dc4df4_terseLabel_en-US" xlink:label="lab_us-gaap_InterestReceivable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest receivable</link:label>
    <link:label id="lab_us-gaap_InterestReceivable_label_en-US" xlink:label="lab_us-gaap_InterestReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestReceivable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestReceivable" xlink:to="lab_us-gaap_InterestReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_e566dc58-00be-4983-b35d-5cfc4b483397_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Segment Reporting Information By Segment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UseOfEstimates_e114022d-c887-49be-b124-ff1211894b26_terseLabel_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Use of Estimates</link:label>
    <link:label id="lab_us-gaap_UseOfEstimates_label_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UseOfEstimates"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UseOfEstimates" xlink:to="lab_us-gaap_UseOfEstimates" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_4168457d-4edf-4429-874f-b4ef47e91e91_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_4f961645-5a0a-42a8-be18-24a3f6797bb8_terseLabel_en-US" xlink:label="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assumed conversion of dilutive securities:</link:label>
    <link:label id="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_label_en-US" xlink:label="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assumed Conversion of Dilutive Securities [Abstract]</link:label>
    <link:label id="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_documentation_en-US" xlink:label="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assumed Conversion of Dilutive Securities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract" xlink:href="tyl-20201231.xsd#tyl_AssumedConversionofDilutiveSecuritiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract" xlink:to="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_2c1e0c9b-ad06-4629-9630-11ed4500669b_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_84b1398c-8889-4765-8d81-3c0e44f1165e_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Excess tax benefits of share-based compensation</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-based Payment Arrangement, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermLineOfCredit_a8732965-04e7-42d8-aa9c-3d0655fe08f9_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermLineOfCredit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving line of credit</link:label>
    <link:label id="lab_us-gaap_LongTermLineOfCredit_fd171f6b-390f-4de0-8a61-6ba66dd76624_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermLineOfCredit" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding borrowings</link:label>
    <link:label id="lab_us-gaap_LongTermLineOfCredit_label_en-US" xlink:label="lab_us-gaap_LongTermLineOfCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Line of Credit, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermLineOfCredit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermLineOfCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermLineOfCredit" xlink:to="lab_us-gaap_LongTermLineOfCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_ec2ea067-1057-4851-bcd7-19286ecc4727_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividend yield (in percentage)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_ac224628-e19f-4ec6-b9e3-46a4797eff5f_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedContractCostNet_e9ade427-1b27-4803-9290-ed2fb2172ac9_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred commissions</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostNet_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostNet" xlink:to="lab_us-gaap_CapitalizedContractCostNet" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_1ff68232-0aea-45fa-a6a7-65ceb8a6d113_terseLabel_en-US" xlink:label="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Documents Incorporated by Reference</link:label>
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_label_en-US" xlink:label="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentsIncorporatedByReferenceTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LicenseMember_af629055-4f8f-4998-863e-6aa09121f55e_terseLabel_en-US" xlink:label="lab_us-gaap_LicenseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software licenses and royalties</link:label>
    <link:label id="lab_us-gaap_LicenseMember_label_en-US" xlink:label="lab_us-gaap_LicenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">License [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LicenseMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LicenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LicenseMember" xlink:to="lab_us-gaap_LicenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_2ea4488e-8b73-4e91-b57b-bb43819a6560_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScenarioUnspecifiedDomain_b9ddaa49-b344-4863-8161-a0c5eea76dd0_terseLabel_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Domain]</link:label>
    <link:label id="lab_srt_ScenarioUnspecifiedDomain_label_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScenarioUnspecifiedDomain" xlink:to="lab_srt_ScenarioUnspecifiedDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LegalEntityAxis_77e4a660-4408-4a66-b387-beaa325587bc_terseLabel_en-US" xlink:label="lab_dei_LegalEntityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Legal Entity</link:label>
    <link:label id="lab_dei_LegalEntityAxis_label_en-US" xlink:label="lab_dei_LegalEntityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LegalEntityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LegalEntityAxis" xlink:to="lab_dei_LegalEntityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForSoftware_4d207d42-7ac4-47fa-8102-eb4cf3b87eb3_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForSoftware" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized software development costs</link:label>
    <link:label id="lab_us-gaap_PaymentsForSoftware_label_en-US" xlink:label="lab_us-gaap_PaymentsForSoftware" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Software</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForSoftware" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForSoftware"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForSoftware" xlink:to="lab_us-gaap_PaymentsForSoftware" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_6e3306f0-c4c6-40a3-a207-a9a7fba4ac7c_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additions to property and equipment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_a0ba0b59-1031-4427-b29f-e47c027b79e8_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsDomain_2969c946-c372-462c-98a8-2af6aa594f80_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items</link:label>
    <link:label id="lab_srt_ConsolidationItemsDomain_c6be11e5-856a-4676-b81a-66ea84700cb0_verboseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:label id="lab_srt_ConsolidationItemsDomain_label_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain" xlink:to="lab_srt_ConsolidationItemsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_f1fac842-2ccb-4b87-a662-63ab5c2464b3_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_bcdaf67a-adad-4530-a048-14d7dc17cbd0_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_1c99c8fb-8eae-473a-bcc7-25a2f1a32291_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_017d0e86-bd5e-4353-90b8-772d33c0a150_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingent consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Contingent Consideration, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_4306bc57-9654-4285-a691-fa474fa84cf8_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">GOODWILL AND OTHER INTANGIBLE ASSETS</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_6f6d6a21-d373-47c5-bff3-451f78cab5ab_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_c92ec764-ff5d-4d3b-b4cf-782c936270a6_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, remaining performance obligation, percentage</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent_b02f439c-2a26-4242-b7e6-cd5530e8a63c_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued insurance</link:label>
    <link:label id="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Insurance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedInsuranceCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:to="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnbilledRevenuesMember_c1b163a3-4f51-4a9d-a206-48e6b71708c3_terseLabel_en-US" xlink:label="lab_us-gaap_UnbilledRevenuesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unbilled Revenues</link:label>
    <link:label id="lab_us-gaap_UnbilledRevenuesMember_label_en-US" xlink:label="lab_us-gaap_UnbilledRevenuesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unbilled Revenues [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledRevenuesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnbilledRevenuesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnbilledRevenuesMember" xlink:to="lab_us-gaap_UnbilledRevenuesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_7f945dd9-85b0-4a91-a851-b818e8fc29b9_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of disaggregation of revenue</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_39f5aa2e-d9c7-4120-9c25-2e61515082a5_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of Long-Lived Assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseTermOfContract_ee206db8-058a-47c5-83da-cdba05b8e0a6_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease term (in years)</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseTermOfContract_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Term of Contract</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:to="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_2a3dee9d-4204-4533-928e-3b1f9b390965_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock option and other employee benefit plans</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Employee Benefits</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_dcf3c720-fc8c-4d1a-ba7c-c1b9f2fe6525_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_afc9472e-1d91-40b3-8243-974bdf56f6c2_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable" xlink:to="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_CostMethodInvestmentOwnershipPercentage_4ec8d19c-241b-4734-a208-f585d61f0484_terseLabel_en-US" xlink:label="lab_tyl_CostMethodInvestmentOwnershipPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investment percentage</link:label>
    <link:label id="lab_tyl_CostMethodInvestmentOwnershipPercentage_label_en-US" xlink:label="lab_tyl_CostMethodInvestmentOwnershipPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost Method Investment Ownership Percentage</link:label>
    <link:label id="lab_tyl_CostMethodInvestmentOwnershipPercentage_documentation_en-US" xlink:label="lab_tyl_CostMethodInvestmentOwnershipPercentage" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost method investment ownership percentage.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CostMethodInvestmentOwnershipPercentage" xlink:href="tyl-20201231.xsd#tyl_CostMethodInvestmentOwnershipPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CostMethodInvestmentOwnershipPercentage" xlink:to="lab_tyl_CostMethodInvestmentOwnershipPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_8975a4b1-964e-4764-b57f-39d497909b66_terseLabel_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quarterly Financial Information Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quarterly Financial Information Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_ddc1690a-1c88-4425-a7b5-81f5d50f1dad_terseLabel_en-US" xlink:label="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost method investment</link:label>
    <link:label id="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_label_en-US" xlink:label="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Securities, FV-NI and without Readily Determinable Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" xlink:to="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_ff6470ab-161b-4ad2-9c5f-89ad5e155fc1_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based compensation expense</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_328cdb6b-93a4-4f75-bd88-3ec5106d5383_terseLabel_en-US" xlink:label="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SaaS arrangements services</link:label>
    <link:label id="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_label_en-US" xlink:label="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subscription And Circulation - SaaS Arrangements Services [Member]</link:label>
    <link:label id="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_documentation_en-US" xlink:label="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subscription And Circulation - SaaS Arrangements Services [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:href="tyl-20201231.xsd#tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:to="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityDomain_cebff6df-81d9-4ab8-aea8-019707811a3d_terseLabel_en-US" xlink:label="lab_dei_EntityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity</link:label>
    <link:label id="lab_dei_EntityDomain_label_en-US" xlink:label="lab_dei_EntityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityDomain" xlink:to="lab_dei_EntityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_accc79b9-5631-49bf-ab80-a6602e9b73b8_terseLabel_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_2b7d52ee-c308-4c90-994f-747ad6407f11_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Year ending December 31,</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments, Fiscal Year Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_060d0579-dff6-4a3a-8c1a-e408e3920534_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill acquired</link:label>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_label_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Acquired During Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:to="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationTextBlock_b59060de-bc66-4454-8897-8365de669ef3_terseLabel_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">QUARTERLY FINANCIAL INFORMATION (unaudited)</link:label>
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationTextBlock_label_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quarterly Financial Information [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_QuarterlyFinancialInformationTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_QuarterlyFinancialInformationTextBlock" xlink:to="lab_us-gaap_QuarterlyFinancialInformationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_4f7ceef8-c236-4d50-8519-321fe31d55f1_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation Of Operating Profit Loss From Segments To Consolidated [Table]</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable" xlink:to="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_8d1b9c0e-18f3-4cd3-be9c-3be680b56c6e_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Useful Lives (years)</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_AccountingPoliciesTable_7b4f1d57-9b1f-43d8-9fe9-27015bebd262_terseLabel_en-US" xlink:label="lab_tyl_AccountingPoliciesTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Table]</link:label>
    <link:label id="lab_tyl_AccountingPoliciesTable_label_en-US" xlink:label="lab_tyl_AccountingPoliciesTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Table]</link:label>
    <link:label id="lab_tyl_AccountingPoliciesTable_documentation_en-US" xlink:label="lab_tyl_AccountingPoliciesTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting policies.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AccountingPoliciesTable" xlink:href="tyl-20201231.xsd#tyl_AccountingPoliciesTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AccountingPoliciesTable" xlink:to="lab_tyl_AccountingPoliciesTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_ed9f9995-db95-4b73-8d23-67a94bd003f7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillLineItems_cb81b83e-e859-498b-bc9c-a4586e3979b3_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:label id="lab_us-gaap_GoodwillLineItems_label_en-US" xlink:label="lab_us-gaap_GoodwillLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillLineItems" xlink:to="lab_us-gaap_GoodwillLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_9a5dec9f-d9ca-4005-9bf5-d598fce1b23a_verboseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_e5830b09-430e-438d-826e-63ad57823794_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Contract with Customer, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_a88f13e0-1155-450e-aa48-29647fa5a677_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LEASES</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Investments_b90cef5f-658d-4831-bc0f-b50eced79402_terseLabel_en-US" xlink:label="lab_us-gaap_Investments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-current investments</link:label>
    <link:label id="lab_us-gaap_Investments_label_en-US" xlink:label="lab_us-gaap_Investments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Investments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Investments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Investments" xlink:to="lab_us-gaap_Investments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesAcquiredInPlaceMember_45fc2f4d-1c88-42d1-b5f8-704fbf2b9ca5_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAcquiredInPlaceMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases acquired</link:label>
    <link:label id="lab_us-gaap_LeasesAcquiredInPlaceMember_1951ff64-844f-463b-ba61-11ef918e6fc7_verboseLabel_en-US" xlink:label="lab_us-gaap_LeasesAcquiredInPlaceMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases acquired</link:label>
    <link:label id="lab_us-gaap_LeasesAcquiredInPlaceMember_label_en-US" xlink:label="lab_us-gaap_LeasesAcquiredInPlaceMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases, Acquired-in-Place [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAcquiredInPlaceMember" xlink:to="lab_us-gaap_LeasesAcquiredInPlaceMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_0aaa1f7c-29e7-4c13-b190-7eb742b330e6_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total cost of revenues</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_7491b4b6-6e02-4086-bdef-bf6b8a121f16_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total cost of revenues</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_55b54039-a43b-4692-a7ec-3d6c6505d29b_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_51859bac-e95f-4bc7-a767-23e46e3cf99f_terseLabel_en-US" xlink:label="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other acquisitions</link:label>
    <link:label id="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_label_en-US" xlink:label="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Series of Individually Immaterial Business Acquisitions [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:to="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_721e3141-d08b-47bf-8fbf-00c3f537002f_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement Equity Components</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_72f7d20c-3245-4338-b8f0-0bb67397083d_terseLabel_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Progress billing retention percentage</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_label_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Percentage Withheld From Progress Billing</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_documentation_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Percentage Withheld From Progress Billing</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:to="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ecbcd3ff-d2e4-4cb6-acdd-eb5464dcff79_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement [Abstract]</link:label>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_d6df5fa4-8811-487f-aeb8-3b3ae9f2954d_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Name</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain" xlink:to="lab_us-gaap_DebtInstrumentNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_7d0cdd07-e7e0-4b51-a5a4-9d06cfc542d8_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total deferred income tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="lab_us-gaap_DeferredTaxAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_c303a92c-8439-46e8-96d9-6d83dfb68c29_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LandMember_f92eb7ac-8ee9-4870-a868-c64d50bc7d2d_terseLabel_en-US" xlink:label="lab_us-gaap_LandMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land</link:label>
    <link:label id="lab_us-gaap_LandMember_label_en-US" xlink:label="lab_us-gaap_LandMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LandMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandMember" xlink:to="lab_us-gaap_LandMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_559d32f5-ede5-4c8a-b31c-bba421c5ea7a_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_34b7535c-a3fe-4e7d-a3e0-5d5fd6884cbd_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating leases, short-term</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_cd5e8dc4-d40e-4ba1-8a3e-395551b5fd9e_terseLabel_en-US" xlink:label="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of supplemental information related to leases</link:label>
    <link:label id="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_label_en-US" xlink:label="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Supplemental Information Related To Leases [Table Text Block]</link:label>
    <link:label id="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_documentation_en-US" xlink:label="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Supplemental Information Related To Leases [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" xlink:href="tyl-20201231.xsd#tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" xlink:to="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_de9fb9c8-f272-4674-89e8-55ca4aaff2a2_terseLabel_en-US" xlink:label="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MicroPact</link:label>
    <link:label id="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_label_en-US" xlink:label="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MP Holdings Parent, Inc. dba MicroPact [Member]</link:label>
    <link:label id="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_documentation_en-US" xlink:label="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MP Holdings Parent, Inc. dba MicroPact [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:href="tyl-20201231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:to="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_f85502ec-1c63-4afb-8051-dffc84cb2b38_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of weighted average assumptions used for options granted</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_d5704ea4-3270-4ad9-8769-34bff8c66d5d_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of employer contribution</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:to="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerContractTerm_78353938-7baf-4b5c-995c-570f0322529d_terseLabel_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerContractTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract term (in years)</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerContractTerm_label_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerContractTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Contract Term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerContractTerm_documentation_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerContractTerm" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Contract Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerContractTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RevenueFromContractWithCustomerContractTerm" xlink:to="lab_tyl_RevenueFromContractWithCustomerContractTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_5560c02a-4ad4-4f47-9f67-26e170877a56_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_bfd2b1a4-ba93-46ea-9b77-4b64ecbc4824_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercised (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenuesAbstract_36d8c354-4062-4896-bcf4-cb19f211961a_terseLabel_en-US" xlink:label="lab_us-gaap_RevenuesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenues:</link:label>
    <link:label id="lab_us-gaap_RevenuesAbstract_label_en-US" xlink:label="lab_us-gaap_RevenuesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenues [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenuesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuesAbstract" xlink:to="lab_us-gaap_RevenuesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_26b1d588-c4f1-4b2c-8453-a1b43269e9dc_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_0f68efcc-6cac-4308-9a13-15ce30a4fa59_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SHAREHOLDERS&#8217; EQUITY</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Note Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_7761270d-59bb-4f73-8e4a-8f99a5b28f6e_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of stock option activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_eb8758ba-4f38-4d13-b9dc-a1c6a726f5ca_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated</link:label>
    <link:label id="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems" xlink:to="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_59cdfa4d-7b12-4470-bde0-e417754a54bd_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles_d708e6da-6282-4ba0-98a2-f517afbdc28e_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments related to intangibles</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Intangibles</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles" xlink:to="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_cb837e29-49df-4841-981c-0d8f13cc83c1_terseLabel_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_label_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain" xlink:to="lab_srt_NameOfMajorCustomerDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_e629e6b6-eb36-4177-8f41-5dcc926a10a7_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption, Adjustment</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption, Adjustment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_99ba654b-fa56-475e-b8be-554e2a34c5db_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid in Capital, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_d796a085-0fd4-442b-8a72-ce606cda830b_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_b9a492a1-c97a-43c8-b976-b84ca607512e_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_dbedd3c0-1202-4764-830b-099e6dbc6d2e_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unvested options to purchase (in shares)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_8a66e9d5-8940-4ff6-9135-ae0202d8faea_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_a2eb03bf-30b6-4d03-96d6-b06428871d83_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_3e36bf01-6c37-49f7-9545-4f202feeba52_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average discount rate</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_b345ed6c-b4df-42e8-9e62-f973ef75af85_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of allocation of acquisition intangible assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:to="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_7655c32d-1975-4653-b5fc-5a83f226f468_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total deferred income tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntersegmentEliminationMember_dad41d39-cc6c-465a-b102-fddc4e9c848c_terseLabel_en-US" xlink:label="lab_us-gaap_IntersegmentEliminationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intercompany</link:label>
    <link:label id="lab_us-gaap_IntersegmentEliminationMember_label_en-US" xlink:label="lab_us-gaap_IntersegmentEliminationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intersegment Eliminations [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntersegmentEliminationMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntersegmentEliminationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntersegmentEliminationMember" xlink:to="lab_us-gaap_IntersegmentEliminationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_324422ae-34b7-4f6a-9b2a-13c44ae8b5f4_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_ff6c9c42-1943-4363-8e58-b666eeb0d894_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of operating income from segments to consolidated</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:to="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_31885392-f5bd-4ab1-aeca-6023b274c7f5_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_3e2227f3-e940-431e-af33-89d4521185bd_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of reportable segment (segment)</link:label>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_label_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Reportable Segments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportableSegments" xlink:to="lab_us-gaap_NumberOfReportableSegments" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_SeniorUnsecuredBridgeLoanFacilityMember_097f514c-e8b3-41f3-8efa-fca0cfd07cbe_terseLabel_en-US" xlink:label="lab_tyl_SeniorUnsecuredBridgeLoanFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Unsecured Bridge Loan Facility</link:label>
    <link:label id="lab_tyl_SeniorUnsecuredBridgeLoanFacilityMember_label_en-US" xlink:label="lab_tyl_SeniorUnsecuredBridgeLoanFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Unsecured Bridge Loan Facility [Member]</link:label>
    <link:label id="lab_tyl_SeniorUnsecuredBridgeLoanFacilityMember_documentation_en-US" xlink:label="lab_tyl_SeniorUnsecuredBridgeLoanFacilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Unsecured Bridge Loan Facility</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SeniorUnsecuredBridgeLoanFacilityMember" xlink:href="tyl-20201231.xsd#tyl_SeniorUnsecuredBridgeLoanFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SeniorUnsecuredBridgeLoanFacilityMember" xlink:to="lab_tyl_SeniorUnsecuredBridgeLoanFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_de825b75-841f-466f-ae6f-1f61d3abff9b_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt instrument, interest rate, effective percentage</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Interest Rate, Effective Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsAxis_cfce9a00-961b-4b3c-8630-44e2a3786232_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items</link:label>
    <link:label id="lab_srt_ConsolidationItemsAxis_label_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsAxis" xlink:to="lab_srt_ConsolidationItemsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_7b4658d1-3e02-4733-ae86-d3b434afdda8_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_b215d4db-51cd-4738-ab02-72dc254ee3f0_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill impairment loss</link:label>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Impairment Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillImpairmentLoss" xlink:to="lab_us-gaap_GoodwillImpairmentLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_a22e87ce-a688-41e0-8780-2d33bc4d8aaa_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable (less allowance for losses and sales adjustments of $9,255 in 2020 and $5,738 in 2019)</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_AppraisalAndTaxMember_9979959d-922c-4807-8089-12b4f25a1d12_terseLabel_en-US" xlink:label="lab_tyl_AppraisalAndTaxMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Appraisal and Tax</link:label>
    <link:label id="lab_tyl_AppraisalAndTaxMember_label_en-US" xlink:label="lab_tyl_AppraisalAndTaxMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Appraisal And Tax [Member]</link:label>
    <link:label id="lab_tyl_AppraisalAndTaxMember_documentation_en-US" xlink:label="lab_tyl_AppraisalAndTaxMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Appraisal and tax.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AppraisalAndTaxMember" xlink:to="lab_tyl_AppraisalAndTaxMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_dc315e2c-752b-4bbc-8fec-38d818aa6a00_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsidiarySaleOfStockAxis_b27350c2-5fb2-4c9e-91cc-64d4e1c4d259_terseLabel_en-US" xlink:label="lab_us-gaap_SubsidiarySaleOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsidiary Sale Of Stock</link:label>
    <link:label id="lab_us-gaap_SubsidiarySaleOfStockAxis_label_en-US" xlink:label="lab_us-gaap_SubsidiarySaleOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of Stock [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis" xlink:to="lab_us-gaap_SubsidiarySaleOfStockAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsLineItems_bd0650c4-90ee-4b67-aa68-f37adf0e1c9b_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsLineItems_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems" xlink:to="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_12640aa8-4e82-4ce6-9be5-e9a305b5d24c_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_75ecdd0d-5589-48a2-bd80-260a7ca21d84_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total deferred income tax assets, net of valuation allowance</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNet" xlink:to="lab_us-gaap_DeferredTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_d7bf51cd-250f-44ce-9384-885f98146dde_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Goodwill_c8d754b5-d217-4c35-ad17-c500d85c5fee_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_6e1d607f-a0ba-481e-85ad-2063c6769fa6_periodStartLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill beginning balance</link:label>
    <link:label id="lab_us-gaap_Goodwill_64964ff5-9bd5-4e8e-b2f6-194d22fc80f5_periodEndLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill ending balance</link:label>
    <link:label id="lab_us-gaap_Goodwill_label_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill" xlink:to="lab_us-gaap_Goodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_f96c63a3-6792-41cf-bec6-3b2356dd579c_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_label_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentTransitionReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_e504c98c-2462-4b01-a024-8e905457afbf_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee Service Share-based Compensation, Allocation of Recognized Period Costs</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_64f78d70-b758-4a88-9fa0-8412d8e1061a_terseLabel_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_label_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:to="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_853fc721-0c2a-4af4-a0e4-5824d5eb17a9_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Prepaid Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsCurrent_ee371ef4-f2fb-4008-a7aa-1c2b64cd8e83_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsCurrent" xlink:to="lab_us-gaap_OtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_a72227d9-ab1a-4b60-a448-631135849ee0_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of changes in carrying amount of goodwill</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_5b389b9f-0979-4fae-9d04-110f08dc9871_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityAbstract_2eeaa8a8-f65a-4153-b843-72487150ff6d_terseLabel_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_EquityAbstract_label_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract" xlink:to="lab_us-gaap_EquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_cf297ca8-e95d-46b8-a616-984109e927f1_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_ab62ad42-9d21-4b17-9376-fda2e37654d4_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_2ee3c7c8-0a21-4529-810e-3a798711528f_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event</link:label>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_label_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventLineItems" xlink:to="lab_us-gaap_SubsequentEventLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingStandardsUpdateExtensibleList_8d418316-e12d-480d-a2e1-7a4af2a53d39_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdateExtensibleList" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update</link:label>
    <link:label id="lab_us-gaap_AccountingStandardsUpdateExtensibleList_label_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdateExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update [Extensible List]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingStandardsUpdateExtensibleList" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingStandardsUpdateExtensibleList"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingStandardsUpdateExtensibleList" xlink:to="lab_us-gaap_AccountingStandardsUpdateExtensibleList" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_49fb0405-520f-4c61-a53c-b03ad3cf88ae_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAxis_ef7af1e5-ba82-4462-9221-937b9136ec5d_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Axis]</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAxis_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MaintenanceMember_80561415-a904-4ff2-9c70-2df8d0151137_terseLabel_en-US" xlink:label="lab_us-gaap_MaintenanceMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maintenance</link:label>
    <link:label id="lab_us-gaap_MaintenanceMember_label_en-US" xlink:label="lab_us-gaap_MaintenanceMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maintenance [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaintenanceMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MaintenanceMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MaintenanceMember" xlink:to="lab_us-gaap_MaintenanceMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityDomain_c17bd1b9-fb8c-403f-82d8-1444dafca83d_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility</link:label>
    <link:label id="lab_us-gaap_CreditFacilityDomain_label_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityDomain" xlink:to="lab_us-gaap_CreditFacilityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_7ed82a63-6b58-4649-81cc-4da0643f5cef_totalLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Denominator for diluted earnings per share &#160;&#160; - Adjusted weighted-average shares</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8c58209b-24b8-4282-bd78-a6c804f8bc0a_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares used in computing diluted &#160;&#160; earnings per share (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_079e07b7-d73e-4bab-9c0a-0aba97505f86_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of estimated annual amortization expense</link:label>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LetterOfCreditMember_a9498636-959f-4079-a27f-0d055bcc3c43_terseLabel_en-US" xlink:label="lab_us-gaap_LetterOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Letter of Credit</link:label>
    <link:label id="lab_us-gaap_LetterOfCreditMember_label_en-US" xlink:label="lab_us-gaap_LetterOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Letter of Credit [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LetterOfCreditMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LetterOfCreditMember" xlink:to="lab_us-gaap_LetterOfCreditMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_659cac21-6a61-4165-b3cd-6ea5bb89cb27_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic (USD per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_ea38eb61-eec4-4194-a6da-d48bb0911be6_terseLabel_en-US" xlink:label="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of material legal proceedings pending</link:label>
    <link:label id="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_label_en-US" xlink:label="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number Of Legal Proceedings That Have Material Effect</link:label>
    <link:label id="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_documentation_en-US" xlink:label="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of legal proceedings that have material effect.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" xlink:href="tyl-20201231.xsd#tyl_NumberOfLegalProceedingsThatHaveMaterialEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" xlink:to="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_fa777654-2c2d-4060-ba15-88c4303fbd7a_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected life (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_640bb9fc-b655-41ea-8f02-1a9eeef92403_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_a923a7c0-b4db-4155-846f-9269b6d5df97_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_4266d74f-41c1-4e21-b891-b2e14a4528da_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract" xlink:to="lab_us-gaap_DebtDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_92490da7-5112-423d-9f9a-9b3bfb75cd95_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average remaining lease term (years)</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_20613385-19bf-4333-be8c-9917f4545db1_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Collections of accounts previously written off</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Recovery</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_SegmentReportingInformationCapitalExpenditures_15dadcb1-f426-4589-a83d-4499785003e2_terseLabel_en-US" xlink:label="lab_tyl_SegmentReportingInformationCapitalExpenditures" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital expenditures</link:label>
    <link:label id="lab_tyl_SegmentReportingInformationCapitalExpenditures_label_en-US" xlink:label="lab_tyl_SegmentReportingInformationCapitalExpenditures" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information Capital Expenditures</link:label>
    <link:label id="lab_tyl_SegmentReportingInformationCapitalExpenditures_documentation_en-US" xlink:label="lab_tyl_SegmentReportingInformationCapitalExpenditures" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment reporting information, capital expenditures.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SegmentReportingInformationCapitalExpenditures" xlink:href="tyl-20201231.xsd#tyl_SegmentReportingInformationCapitalExpenditures"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SegmentReportingInformationCapitalExpenditures" xlink:to="lab_tyl_SegmentReportingInformationCapitalExpenditures" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_7f0a819c-59f5-48b5-bbf0-22d8f1d45a94_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payment to be Received, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_PercentageOfTotalGoodwill_f2b9d5be-62e9-41c9-b4a8-7fcdca8e12a0_terseLabel_en-US" xlink:label="lab_tyl_PercentageOfTotalGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of total goodwill</link:label>
    <link:label id="lab_tyl_PercentageOfTotalGoodwill_label_en-US" xlink:label="lab_tyl_PercentageOfTotalGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of Total Goodwill</link:label>
    <link:label id="lab_tyl_PercentageOfTotalGoodwill_documentation_en-US" xlink:label="lab_tyl_PercentageOfTotalGoodwill" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of Total Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_PercentageOfTotalGoodwill" xlink:href="tyl-20201231.xsd#tyl_PercentageOfTotalGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_PercentageOfTotalGoodwill" xlink:to="lab_tyl_PercentageOfTotalGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_013b7c4c-435f-407f-9ab5-3b7d686a9866_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash provided (used) by financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_1f891828-f4ee-4ff6-986a-db67fdb8ae25_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Grant Date Fair Value per Share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermDebtTypeAxis_e1be1d87-dbda-4bd7-839b-bd634f8f95d0_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short Term Debt Type</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtTypeAxis_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term Debt, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis" xlink:to="lab_us-gaap_ShortTermDebtTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligation_5d3155f5-50b9-4ab0-b2a8-6998ba74f071_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining performance obligations</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligation_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligation" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_069d9069-03c3-4a29-a2f8-f0731c3e3d1a_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_61e5b083-dbb0-4d2b-823a-77dd55f41279_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of shares pursuant to employee stock purchase plan</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_529f9de4-b554-4ffc-bc87-c38f6a995525_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee stock plan purchases</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Employee Stock Purchase Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_CorporateAndEliminationsMember_cfa2a638-d96a-47f3-989d-8d95948d8255_terseLabel_en-US" xlink:label="lab_tyl_CorporateAndEliminationsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate and Elimination</link:label>
    <link:label id="lab_tyl_CorporateAndEliminationsMember_label_en-US" xlink:label="lab_tyl_CorporateAndEliminationsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate And Eliminations [Member]</link:label>
    <link:label id="lab_tyl_CorporateAndEliminationsMember_documentation_en-US" xlink:label="lab_tyl_CorporateAndEliminationsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate And Eliminations [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CorporateAndEliminationsMember" xlink:href="tyl-20201231.xsd#tyl_CorporateAndEliminationsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CorporateAndEliminationsMember" xlink:to="lab_tyl_CorporateAndEliminationsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValue_4fdb72f9-9492-48e4-92af-4bf25051cbbb_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, $0.01 par value; 100,000,000 shares authorized; 48,147,969 shares &#160;&#160; issued in 2020 and 2019</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_label_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RecurringRevenueMember_30cb4f53-9c57-4768-95df-82e043733fd0_terseLabel_en-US" xlink:label="lab_tyl_RecurringRevenueMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recurring revenues</link:label>
    <link:label id="lab_tyl_RecurringRevenueMember_label_en-US" xlink:label="lab_tyl_RecurringRevenueMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recurring Revenue [Member]</link:label>
    <link:label id="lab_tyl_RecurringRevenueMember_documentation_en-US" xlink:label="lab_tyl_RecurringRevenueMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recurring Revenue [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecurringRevenueMember" xlink:href="tyl-20201231.xsd#tyl_RecurringRevenueMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RecurringRevenueMember" xlink:to="lab_tyl_RecurringRevenueMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_1cef8a47-064d-466c-88f9-9b9898946199_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_036fda3f-5e5f-4a18-8ec2-14e7b21b521f_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_NumberOfWhollyOwnedSubsidiaries_48e6bcaf-2d15-4cc3-95e2-78ff3b3ca2ad_terseLabel_en-US" xlink:label="lab_tyl_NumberOfWhollyOwnedSubsidiaries" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of wholly-owned subsidiaries</link:label>
    <link:label id="lab_tyl_NumberOfWhollyOwnedSubsidiaries_label_en-US" xlink:label="lab_tyl_NumberOfWhollyOwnedSubsidiaries" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number Of Wholly Owned Subsidiaries</link:label>
    <link:label id="lab_tyl_NumberOfWhollyOwnedSubsidiaries_documentation_en-US" xlink:label="lab_tyl_NumberOfWhollyOwnedSubsidiaries" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number Of Wholly Owned Subsidiaries</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumberOfWhollyOwnedSubsidiaries" xlink:href="tyl-20201231.xsd#tyl_NumberOfWhollyOwnedSubsidiaries"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumberOfWhollyOwnedSubsidiaries" xlink:to="lab_tyl_NumberOfWhollyOwnedSubsidiaries" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_8bdca180-3f25-4a1f-bc6c-1f8d075505cd_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalYearFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentAnnualReport_6ff5ad12-f1be-4043-bd67-8389d55df27d_terseLabel_en-US" xlink:label="lab_dei_DocumentAnnualReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Annual Report</link:label>
    <link:label id="lab_dei_DocumentAnnualReport_label_en-US" xlink:label="lab_dei_DocumentAnnualReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Annual Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentAnnualReport" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentAnnualReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentAnnualReport" xlink:to="lab_dei_DocumentAnnualReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_422352fb-d5ff-4b7a-b705-efa2e334a0f1_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization expense, 2022</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_0a68aee7-b8d6-4176-b85f-2f701ae9a919_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_5ebc79b9-0a7f-4790-929c-888b5475beba_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Aggregate Intrinsic Value, Exercisable</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_6e4a531b-85b3-4711-aa58-905a4a53047f_negatedLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Excess tax benefit</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expense, Tax Benefit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_1f4b3940-2e84-490a-9066-7b2f3cabe609_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Allowance for credit loss rollfoward</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_f9254a67-5679-4cce-bf53-7781657083b5_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCurrentReportingStatus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_cf0e9aad-ef66-4c79-b39d-5e4c06c108c4_terseLabel_en-US" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">EMPLOYEE BENEFIT PLANS</link:label>
    <link:label id="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_label_en-US" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Compensation and Employee Benefit Plans, Other than Share-based Compensation [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" xlink:to="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_10f2186a-63a4-48f2-b898-78afe1d8e095_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of software development costs</link:label>
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_label_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Computer Software, Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_27e13568-0744-4ae7-b163-d47526f5e774_terseLabel_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Benefits [Abstract]</link:label>
    <link:label id="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Benefits [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReceivableTypeDomain_28bb10b4-633b-4afb-8f3d-ff925b643fb8_terseLabel_en-US" xlink:label="lab_us-gaap_ReceivableTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivable [Domain]</link:label>
    <link:label id="lab_us-gaap_ReceivableTypeDomain_label_en-US" xlink:label="lab_us-gaap_ReceivableTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivable [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivableTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReceivableTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivableTypeDomain" xlink:to="lab_us-gaap_ReceivableTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfEquityMethodInvestments_ca698961-49f4-443b-affc-e46ecdad0fbb_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from the sale of equity investment in preferred shares</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfEquityMethodInvestments_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Sale of Equity Method Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromSaleOfEquityMethodInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:to="lab_us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTable_00d9a26b-5df8-44ce-a741-0d9e8e58e5f0_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTable_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTable" xlink:to="lab_us-gaap_SubsequentEventTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_02d99918-e5d8-449e-8fcf-6c92be5371f2_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance/ Exercise of stock options (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_a805cb92-b26d-46c1-bab4-0ad81d2d6edf_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock option exercises (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLenderDomain_4b976613-1a84-4ee5-b074-9122145262f8_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLenderDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Lender [Domain]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLenderDomain_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLenderDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Lender [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLenderDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="lab_us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_e2d598c8-8f56-40af-b442-713f6a0021ea_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_eb0ca97f-f69c-4e43-9405-7b7cf46f5214_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares issued (shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_bfaaa76b-88d2-4948-89ed-bbae880048c7_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_CivicLLCMember_a121faac-e431-4230-b658-b705994a5974_verboseLabel_en-US" xlink:label="lab_tyl_CivicLLCMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MyCivic</link:label>
    <link:label id="lab_tyl_CivicLLCMember_label_en-US" xlink:label="lab_tyl_CivicLLCMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Civic LLC [Member]</link:label>
    <link:label id="lab_tyl_CivicLLCMember_documentation_en-US" xlink:label="lab_tyl_CivicLLCMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Civic LLC [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CivicLLCMember" xlink:href="tyl-20201231.xsd#tyl_CivicLLCMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CivicLLCMember" xlink:to="lab_tyl_CivicLLCMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_3e957015-611a-4da6-91a3-18214468b0bb_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Defined Benefit Plans Disclosures [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Defined Benefit Plans Disclosures [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_a34a109d-791f-417f-b49f-269c60174462_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_79fb16d1-1c3d-4b26-a0bf-a28a2ddf18bc_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Present value of operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability" xlink:to="lab_us-gaap_OperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_bdef22fe-825f-4fa8-a9c9-2dd77b071e7b_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net deferred income tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilities" xlink:to="lab_us-gaap_DeferredTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_b990913c-434f-40ef-acad-2b72a9c6f27c_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract" xlink:to="lab_us-gaap_SegmentReportingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNet_e1a083a8-4ce7-48c5-954b-ccaadbd8d531_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable, net</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNet_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNet" xlink:to="lab_us-gaap_AccountsReceivableNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_13fb18a5-0020-45a1-9ebd-43868ce82645_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_f5273362-8a47-4e39-bc6b-64ab10e6d5da_terseLabel_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss and credit carryforwards</link:label>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_label_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Operating Loss And Tax Credit Carryforwards</link:label>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_documentation_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Operating Loss And Tax Credit Carryforwards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:href="tyl-20201231.xsd#tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:to="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_28610f4c-5133-4c61-a6ce-fad7fa315a66_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total shareholders' equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_903ce6bf-7486-450f-af8b-e80e4c952b77_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_e570fe10-371c-481c-9c54-e107a26ed53d_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_afad132d-2b09-4b21-882a-52771122415f_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total purchase price to acquire business</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Consideration Transferred</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_5da13ce9-62b8-4356-ab8e-b27a0f1e65aa_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Shareholders' equity, Total</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_56b9c0be-4b31-4488-9bea-9d2bb322ba3b_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated other comprehensive loss, net of tax</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_87220df5-f5f6-4c5e-9747-f0f40f6093ad_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">INCOME TAX</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_8d6d43f3-07a7-4d83-8f9e-900cb03b54bd_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_8f8336ba-98fe-450d-a19f-a3bc2f557c88_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued wages, bonuses and commissions</link:label>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee-related Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_6a5a24c6-99a8-40ef-979b-5873b58a59a7_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units (RSUs)</link:label>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrentAbstract_f1bde082-595d-4133-8d62-6a1337782c70_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other assets:</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrentAbstract_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Assets, Noncurrent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsNoncurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract" xlink:to="lab_us-gaap_OtherAssetsNoncurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseCost_7065a1f6-af22-47b8-ad83-d93d530565c0_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease cost</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseCost_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseCost" xlink:to="lab_us-gaap_OperatingLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_49165a2b-639e-473a-b0c5-3d7d835dc982_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_8e127b95-9b4b-4cc9-85c6-8fa602b2b4e9_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of annual compensation participants may contribute</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Maximum Employee Subscription Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesAbstract_13fc6afa-72d3-46d9-9109-8ddb0f4c3b45_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income tax liabilities:</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesAbstract_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Gross [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6d79af4a-0d69-433d-aed7-77504e1d13dd_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive securities excluded from computation of earnings per share, amount</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_67a5ae1d-1b0f-412b-81e3-38d53bb3e304_totalLabel_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current income tax expense benefit</link:label>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_897e8655-9795-4664-b8e7-0f798e3328da_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility [Line Items]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems" xlink:to="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductMember_372672f4-3bb0-41f1-a4c0-a2b5dfb64932_terseLabel_en-US" xlink:label="lab_us-gaap_ProductMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hardware and other</link:label>
    <link:label id="lab_us-gaap_ProductMember_label_en-US" xlink:label="lab_us-gaap_ProductMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductMember" xlink:to="lab_us-gaap_ProductMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_061ab84b-04bb-4a84-b260-7f59bf44b3ad_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term lease cost</link:label>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_label_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermLeaseCost" xlink:to="lab_us-gaap_ShortTermLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_49ca5722-a258-4ff1-82b3-5caef81d6573_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments_d0c6df1a-ae1a-49bb-8c0a-f19c24633306_terseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and investments</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, and Short-term Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsAndShortTermInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:to="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAbstract_04419c49-1271-463f-9ab0-1010e54ae710_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAbstract" xlink:to="lab_us-gaap_LiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_27785b4c-36d2-4025-84c7-9789478dbdc0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Valuation allowance</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_104f546d-14be-46e6-ac34-eb8fc65637bb_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_5c4e7302-3291-4033-8dc4-475eb185c913_terseLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_4150ec1c-70c8-44c4-9695-93b41ec1b1c3_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_626158f2-16e5-4eb4-9015-08002a50e6fc_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_0f1e25d8-978f-4e75-baf3-725506034a2e_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization expense, 2023</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_aeab4bc4-d6cd-4374-800f-9b1f4c10598a_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_80fc2db9-a7e7-484a-9fc8-bb04dd8232d0_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_dc138b1a-0692-4631-898a-97bd921f5b05_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_ab6ef44e-ad90-4960-8a08-61a63562bdfa_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:to="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_9a2a5b7f-09c6-4eb7-b549-3dfb407697b8_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SHARE-BASED COMPENSATION</link:label>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_SalesCommissionsAmortizationPeriod_70cd7308-b291-45aa-a4c4-ab621e4ca6c1_terseLabel_en-US" xlink:label="lab_tyl_SalesCommissionsAmortizationPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales commissions amortization period (in years)</link:label>
    <link:label id="lab_tyl_SalesCommissionsAmortizationPeriod_label_en-US" xlink:label="lab_tyl_SalesCommissionsAmortizationPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales Commissions Amortization Period</link:label>
    <link:label id="lab_tyl_SalesCommissionsAmortizationPeriod_documentation_en-US" xlink:label="lab_tyl_SalesCommissionsAmortizationPeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales Commissions Amortization Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod" xlink:href="tyl-20201231.xsd#tyl_SalesCommissionsAmortizationPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SalesCommissionsAmortizationPeriod" xlink:to="lab_tyl_SalesCommissionsAmortizationPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_2c3ab4f0-e57c-4757-9c74-51ec76f162df_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_bd1e2c87-4307-4302-9d9b-1a4de7ee2801_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReceivablesBillingStatusDomain_6dbc5fdc-3d10-452f-ad55-b7f729aa71f5_terseLabel_en-US" xlink:label="lab_us-gaap_ReceivablesBillingStatusDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivables Billing Status [Domain]</link:label>
    <link:label id="lab_us-gaap_ReceivablesBillingStatusDomain_label_en-US" xlink:label="lab_us-gaap_ReceivablesBillingStatusDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivables Billing Status [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesBillingStatusDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReceivablesBillingStatusDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivablesBillingStatusDomain" xlink:to="lab_us-gaap_ReceivablesBillingStatusDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_6e670095-38ed-40ce-8de2-823d0c23fbe3_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Changes in operating assets and liabilities, exclusive of effects of &#160;&#160; acquired companies:</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_1d5c96f2-05e7-473b-a092-48d22d5ad158_terseLabel_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LIBOR Rate</link:label>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_label_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">London Interbank Offered Rate (LIBOR) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:to="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_EquityMethodInvesteeNameDomain_c407db33-15f1-45b5-9efa-52cc0917eff5_terseLabel_en-US" xlink:label="lab_srt_EquityMethodInvesteeNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investment, Name [Domain]</link:label>
    <link:label id="lab_srt_EquityMethodInvesteeNameDomain_label_en-US" xlink:label="lab_srt_EquityMethodInvesteeNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investment, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_EquityMethodInvesteeNameDomain" xlink:to="lab_srt_EquityMethodInvesteeNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ShareBasedCompensationShareConversionRateShares_293803fc-8a37-45ae-a57c-20528ab1b2ba_terseLabel_en-US" xlink:label="lab_tyl_ShareBasedCompensationShareConversionRateShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share conversion rate (shares)</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationShareConversionRateShares_label_en-US" xlink:label="lab_tyl_ShareBasedCompensationShareConversionRateShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation, Share Conversion Rate, Shares</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationShareConversionRateShares_documentation_en-US" xlink:label="lab_tyl_ShareBasedCompensationShareConversionRateShares" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation, Share Conversion Rate, Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationShareConversionRateShares" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationShareConversionRateShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ShareBasedCompensationShareConversionRateShares" xlink:to="lab_tyl_ShareBasedCompensationShareConversionRateShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TradeNamesMember_3accf59a-3196-428c-b748-f1948c152e5f_terseLabel_en-US" xlink:label="lab_us-gaap_TradeNamesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade names</link:label>
    <link:label id="lab_us-gaap_TradeNamesMember_6a85ce4c-1ee0-49d2-b353-f527dd00c0ea_verboseLabel_en-US" xlink:label="lab_us-gaap_TradeNamesMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade names</link:label>
    <link:label id="lab_us-gaap_TradeNamesMember_label_en-US" xlink:label="lab_us-gaap_TradeNamesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade Names [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeNamesMember" xlink:to="lab_us-gaap_TradeNamesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_NICIncMember_9b422c41-e55a-4d5a-b1af-42a1127e25b4_terseLabel_en-US" xlink:label="lab_tyl_NICIncMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">NIC, Inc</link:label>
    <link:label id="lab_tyl_NICIncMember_label_en-US" xlink:label="lab_tyl_NICIncMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">NIC, Inc [Member]</link:label>
    <link:label id="lab_tyl_NICIncMember_documentation_en-US" xlink:label="lab_tyl_NICIncMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">NIC, Inc</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NICIncMember" xlink:href="tyl-20201231.xsd#tyl_NICIncMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NICIncMember" xlink:to="lab_tyl_NICIncMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesAbstract_a2b5cac5-1e00-4e5f-b35e-552cfe28e8e4_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:label id="lab_us-gaap_LeasesAbstract_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract" xlink:to="lab_us-gaap_LeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_64101078-5230-4a15-ade8-05edaef2ae64_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_6644851f-f164-413d-93dd-9c22039e2802_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedContractCostTable_99f958aa-4d42-4ba9-a31b-7e08cc32030c_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost [Table]</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostTable_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostTable" xlink:to="lab_us-gaap_CapitalizedContractCostTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_2067fab9-fdf7-4ded-8faf-25bd0c851fdc_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating loss carryforwards</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwards" xlink:to="lab_us-gaap_OperatingLossCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_5a2bf862-31d6-4e49-85a1-0b3e87b38fc5_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings per common share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_597381fd-15d2-4207-b8fa-d1a0e225e8be_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of deferred tax assets and liabilities</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_f189f372-5c25-4269-82ea-19c2ee7c5fe5_terseLabel_en-US" xlink:label="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Computer equipment and purchased software</link:label>
    <link:label id="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_label_en-US" xlink:label="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Computer Equipment And Purchased Software [Member]</link:label>
    <link:label id="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_documentation_en-US" xlink:label="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Computer equipment and purchased software.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:href="tyl-20201231.xsd#tyl_ComputerEquipmentAndPurchasedSoftwareMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:to="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_37a583f2-5b14-4522-81a0-3d112afeb993_terseLabel_en-US" xlink:label="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating segment and corporate non-segment</link:label>
    <link:label id="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_label_en-US" xlink:label="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Segments And Corporate Non Segment [Member]</link:label>
    <link:label id="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_documentation_en-US" xlink:label="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Segments And Corporate Non Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:href="tyl-20201231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:to="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_NumberOfBusinessUnits_368c047c-e2d8-4a25-bcf2-a79c62274d42_terseLabel_en-US" xlink:label="lab_tyl_NumberOfBusinessUnits" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of business units (business units)</link:label>
    <link:label id="lab_tyl_NumberOfBusinessUnits_label_en-US" xlink:label="lab_tyl_NumberOfBusinessUnits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number Of Business Units</link:label>
    <link:label id="lab_tyl_NumberOfBusinessUnits_documentation_en-US" xlink:label="lab_tyl_NumberOfBusinessUnits" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of business units.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumberOfBusinessUnits" xlink:href="tyl-20201231.xsd#tyl_NumberOfBusinessUnits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumberOfBusinessUnits" xlink:to="lab_tyl_NumberOfBusinessUnits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareGross_9022f733-621c-464e-a0ca-8d117e75506b_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized software in progress</link:label>
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareGross_label_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Computer Software, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareGross" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_6c001a00-e452-402e-bac8-e798b846bdb0_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shareholders' equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_f580fadd-b8f5-4324-aa3f-01d189df1e3c_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization expense, 2025</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_e73d85c6-c0b2-484f-89ba-aacc1c8431ae_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_4902bfdb-8811-48df-8ccf-3fc520b9b7f0_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SoftwareDevelopmentMember_b1f91ae9-7e29-4378-ad83-e6a3484ea80a_terseLabel_en-US" xlink:label="lab_us-gaap_SoftwareDevelopmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized software development costs</link:label>
    <link:label id="lab_us-gaap_SoftwareDevelopmentMember_label_en-US" xlink:label="lab_us-gaap_SoftwareDevelopmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software Development [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareDevelopmentMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareDevelopmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SoftwareDevelopmentMember" xlink:to="lab_us-gaap_SoftwareDevelopmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent_f8f80527-e233-44cc-a48a-fec01236b32f_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue, long-term</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_d8ad58d1-91cf-48a4-8eaa-42c9f33c62fc_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_afc40600-f2f4-4dff-bede-ae5b3da10b00_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_de224cf1-3cea-499b-9813-80f55ad68059_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of shares pursuant to employee stock purchase plan (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_4887e4c7-308e-485b-a78c-2f72fd84ee4c_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee stock plan purchases (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Employee Stock Purchase Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TechnologyServiceMember_0c65a686-5aa7-4ef9-80c5-0a769470581e_terseLabel_en-US" xlink:label="lab_us-gaap_TechnologyServiceMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software services</link:label>
    <link:label id="lab_us-gaap_TechnologyServiceMember_label_en-US" xlink:label="lab_us-gaap_TechnologyServiceMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Technology Service [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyServiceMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TechnologyServiceMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TechnologyServiceMember" xlink:to="lab_us-gaap_TechnologyServiceMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_4c156047-02f2-4601-8680-36fbc29f2f6f_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of activities in common stock</link:label>
    <link:label id="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Stockholders Equity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockholdersEquityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockholdersEquityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfStockholdersEquityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFilerCategory_51ba58ad-5e38-4ac0-bf32-00036e4ec865_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_label_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFilerCategory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_56e096ac-3af9-49d4-a702-a562cc8632ef_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of share-based compensation expense related to share-based awards</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_fb709f60-2968-4cf1-9444-8c17e3ac2c45_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_label_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_1d14ec1b-a6ac-44ad-a6b0-b8e9eb555376_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductsAndServicesDomain_9f2fdd8d-9b34-4bbb-9f29-9b5acd196c06_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_4b767f96-427a-4f34-8c0a-af6b1fbbd2a5_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property Plant And Equipment Type</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_a783d965-fab9-428c-8b21-0b4576d8b2ee_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected volatility (in percentage)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedContributionPlanCostRecognized_94707798-b4dd-44e1-a02c-45c7a3ff3469_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanCostRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined contribution plan, cost recognized</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanCostRecognized_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanCostRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanCostRecognized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanCostRecognized" xlink:to="lab_us-gaap_DefinedContributionPlanCostRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_6b755b36-07f2-4994-9dc4-bd19cf872ade_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_e8a11a6b-2f20-4295-b7b7-aaea83b9b8ec_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of property and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths_26673ee1-99da-489c-ace5-0983f5b9fa92_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payment to be Received, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_9f39e0f7-0c28-4eab-9960-245a94903d4c_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit facility, unused borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_BusinessCombinationTerminationFee_31baecfb-baf9-4362-8962-8f13333d2f8b_terseLabel_en-US" xlink:label="lab_tyl_BusinessCombinationTerminationFee" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Termination fee</link:label>
    <link:label id="lab_tyl_BusinessCombinationTerminationFee_label_en-US" xlink:label="lab_tyl_BusinessCombinationTerminationFee" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Termination Fee</link:label>
    <link:label id="lab_tyl_BusinessCombinationTerminationFee_documentation_en-US" xlink:label="lab_tyl_BusinessCombinationTerminationFee" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Termination Fee</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BusinessCombinationTerminationFee" xlink:href="tyl-20201231.xsd#tyl_BusinessCombinationTerminationFee"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_BusinessCombinationTerminationFee" xlink:to="lab_tyl_BusinessCombinationTerminationFee" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_d71849bb-65b7-4a88-87b3-901ca7246624_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisition intangibles, gross</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5861fd76-66ab-432a-997e-4e974dcd6baa_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortizable intangibles, Gross carrying amount</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_d7a76c40-ccb4-42b6-813a-d15c1d52876a_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt instrument, interest rate, stated percentage</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_5ff4207a-e7ed-48d0-bc31-178aa0afe81f_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross carrying amount of other intangibles:</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_2003342b-929c-426a-8905-94924b651c1f_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected timing of satisfaction period</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_c253fe98-b87f-41f1-a9ed-87bbb907165b_terseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for losses and sales adjustments - accounts receivable</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_7a520389-4d74-469b-855a-ec985624322d_netLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provisions for losses and sales adjustments - accounts receivable</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_a199eada-1480-4421-b875-21b4ecf681d9_negatedLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_716ec361-96b9-4efc-8208-a5552417cc43_negatedLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercised (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_6ff88c8d-f169-455a-bd41-dc53f5e35070_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net increase (decrease) in cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_a7cab757-58ad-463e-b7d3-d9708b109d3c_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ACQUISITIONS</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_25f80042-7e5e-43cd-ae3c-a5191638da46_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of operating lease maturity</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember_a5eaadda-9ba9-46eb-8a92-206f5d654151_terseLabel_en-US" xlink:label="lab_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of subscriptions, software services and maintenance</link:label>
    <link:label id="lab_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember_label_en-US" xlink:label="lab_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost Of Subscriptions, Software Services And Maintenance [Member]</link:label>
    <link:label id="lab_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember_documentation_en-US" xlink:label="lab_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of software services maintenance and subscriptions.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember" xlink:href="tyl-20201231.xsd#tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember" xlink:to="lab_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_04312b83-3d6d-406d-bfe3-3332bd9de34f_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Option Plan</link:label>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Option [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember" xlink:to="lab_us-gaap_EmployeeStockOptionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_5870ec1c-59ca-4f2e-8037-71a48b724255_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other, net</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:to="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_c826b68e-7f83-419b-a981-f0b4ac8cc443_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average basic common shares outstanding</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_6f0d0379-202c-4835-805c-4b1dc606a264_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit facility interest rate (in percent)</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_a247291c-98a4-4704-ae7a-e1142de663df_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Risk-free interest rate (in percentage)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_b61e0113-f895-44ac-b203-8931101719bb_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsAbstract" xlink:to="lab_us-gaap_SubsequentEventsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_d8561781-c32c-4b65-b8f7-2da150fbadcf_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockShares_e3f1f770-914f-4160-b661-36983273d755_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury stock (shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockShares_label_en-US" xlink:label="lab_us-gaap_TreasuryStockShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockShares" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockShares" xlink:to="lab_us-gaap_TreasuryStockShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SaleOfStockNameOfTransactionDomain_6e9facd6-c983-4095-b533-5e0e75a57c99_terseLabel_en-US" xlink:label="lab_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale Of Stock Name Of Transaction</link:label>
    <link:label id="lab_us-gaap_SaleOfStockNameOfTransactionDomain_label_en-US" xlink:label="lab_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of Stock [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:to="lab_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScenarioPlanMember_ce309742-9214-4d19-be77-911ace352cb2_terseLabel_en-US" xlink:label="lab_us-gaap_ScenarioPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan</link:label>
    <link:label id="lab_us-gaap_ScenarioPlanMember_label_en-US" xlink:label="lab_us-gaap_ScenarioPlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario, Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScenarioPlanMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScenarioPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScenarioPlanMember" xlink:to="lab_us-gaap_ScenarioPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_d83a8002-4bf0-4b1e-a257-a700b5c90434_terseLabel_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_label_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityWellKnownSeasonedIssuer" xlink:to="lab_dei_EntityWellKnownSeasonedIssuer" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_189806a6-dcd4-4b43-a1bb-e2735c5db9fc_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">DISAGGREGATION OF REVENUE</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_54abedf9-2cf7-4628-9bf3-822146ecbd41_verboseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_60c8e825-bde7-4914-843d-589ba79640ad_netLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">DEFERRED COMMISSIONS</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestPaidNet_0abec2ec-b37d-401e-ae98-1dff863d9464_terseLabel_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest paid</link:label>
    <link:label id="lab_us-gaap_InterestPaidNet_label_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestPaidNet" xlink:to="lab_us-gaap_InterestPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_482f01e0-86aa-4923-8646-183ed4ad0419_terseLabel_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating leases</link:label>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_52685c34-5d54-4435-ad0d-2b386653f49e_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization expense, 2021</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_947ea0e0-89d4-4963-84f1-c964911894f7_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_047d2575-5ad1-4514-a881-07ecd2c31efd_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_ee3c08f0-1f78-4640-8b2d-8daef64cc516_terseLabel_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_label_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementClassOfStockAxis" xlink:to="lab_us-gaap_StatementClassOfStockAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_cd822069-a536-4897-b044-a3e9418bdb80_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax (benefit) provision</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_20048c38-344b-4168-94e8-06ef103e0d73_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax expense benefit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_080ab1bb-e5e2-438a-be3d-dea8b6289621_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income taxes, net of refunds</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes Paid, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaidNet" xlink:to="lab_us-gaap_IncomeTaxesPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_96a1f0fb-8bec-4dfc-bb79-4669d979f758_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairments of intangible assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of Intangible Assets (Excluding Goodwill)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:to="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_640f115c-135a-446f-b43e-c92745fd3614_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents at beginning of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_8ac116a0-8219-485f-b219-a4515e724e02_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_a1a90dc7-7d1a-4233-a39b-52d766d5b577_terseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_fafcac4f-9043-4b78-bf9c-a5406a684d37_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and Equipment, Net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeaseRenewalTerm_bc766dfc-3285-4470-af90-80baa49c06d1_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, operating lease renewal term (in years)</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeaseRenewalTerm_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Renewal Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeaseRenewalTerm" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeaseRenewalTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeaseRenewalTerm" xlink:to="lab_us-gaap_LessorOperatingLeaseRenewalTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireMarketableSecurities_642c83ad-d548-4af8-ad03-d945194048cd_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase of marketable security investments</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireMarketableSecurities_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Marketable Securities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:to="lab_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_661e0972-4a0f-4f94-a7eb-3a5a8a9d1b47_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_1a18adeb-c7a4-4280-adc0-41b156b8e19a_totalLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransportationEquipmentMember_0d2d65fd-8937-4e7f-8416-6f67ccb2d855_terseLabel_en-US" xlink:label="lab_us-gaap_TransportationEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transportation equipment</link:label>
    <link:label id="lab_us-gaap_TransportationEquipmentMember_label_en-US" xlink:label="lab_us-gaap_TransportationEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transportation Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransportationEquipmentMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransportationEquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransportationEquipmentMember" xlink:to="lab_us-gaap_TransportationEquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_84123e46-280d-453c-bde5-56cfffab4781_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted (USD per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_0d3f8072-d748-43a0-84cb-d0bd46e4ceb8_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings per diluted share (USD per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_1cbd877b-17fd-434b-8874-7ab0cf5bc45c_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_3aa68771-f68d-457d-a467-1e607e14fbc8_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash to acquire business</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Businesses, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesGross" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionDomain_482e158f-ec71-48f7-a9be-53723d7df5df_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Domain]</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionDomain_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_5c33ac44-b983-4cea-b2d6-e32107dd8169_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Stock By Class [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Stock by Class [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable" xlink:to="lab_us-gaap_ScheduleOfStockByClassTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_efedbaaa-8dbb-4f37-936b-b7d0441929c7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total intrinsic value of stock options exercised</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetNoncurrent_d7556c98-41df-4c6e-a89e-ae55192203a9_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable, long-term</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetNoncurrent" xlink:to="lab_us-gaap_AccountsReceivableNetNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_a77296ce-748c-44c3-810b-d35544bee189_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Other Intangible Assets</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_01ae244d-d58f-4bc8-a209-db8349a4a52b_terseLabel_en-US" xlink:label="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost-method investment impairment</link:label>
    <link:label id="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_label_en-US" xlink:label="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Securities without Readily Determinable Fair Value, Impairment Loss, Annual Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" xlink:to="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Depreciation_e827f8b5-b5db-4cb9-a4bf-e759fddada4a_terseLabel_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation expense</link:label>
    <link:label id="lab_us-gaap_Depreciation_label_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation" xlink:to="lab_us-gaap_Depreciation" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_1aa86b91-26fc-4423-b057-105c08c46dd9_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Street</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCredits_92ff4d72-c10f-4d37-87f8-cd022680b28e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax credits</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCredits_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxCredits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_a1d2f027-8098-4100-ab77-a5d5fc974fda_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_fee43485-d0c7-4c55-a3d8-6b05c1815a60_periodStartLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of year</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_7cfc612c-2b2b-419b-ae71-89333006ee51_periodEndLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at end of year</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability" xlink:to="lab_us-gaap_ContractWithCustomerLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrimeRateMember_3c5a8ae4-c767-4a90-9498-23d78277d0d7_terseLabel_en-US" xlink:label="lab_us-gaap_PrimeRateMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prime Commercial Lending Rate</link:label>
    <link:label id="lab_us-gaap_PrimeRateMember_label_en-US" xlink:label="lab_us-gaap_PrimeRateMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prime Rate [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrimeRateMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrimeRateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrimeRateMember" xlink:to="lab_us-gaap_PrimeRateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_217d2eda-b3e8-4f57-99a1-1f67c2ed332d_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0da32d86-3085-42f1-b760-c00414f7c1bb_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_c3453e80-c44e-4b9a-ade0-8ff7cdc84b07_totalLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net decrease in net income</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expense, after Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_54821ed7-ed50-4fa5-ac7e-5cc882cef4a6_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Finite Lived Intangible Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RecurringRevenuePercentageOfTotalRevenue_ec19ab93-63c2-47f6-b009-4dc6f1d0fbfe_terseLabel_en-US" xlink:label="lab_tyl_RecurringRevenuePercentageOfTotalRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recurring revenue percentage of total revenue (percent)</link:label>
    <link:label id="lab_tyl_RecurringRevenuePercentageOfTotalRevenue_label_en-US" xlink:label="lab_tyl_RecurringRevenuePercentageOfTotalRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recurring Revenue Percentage of Total Revenue</link:label>
    <link:label id="lab_tyl_RecurringRevenuePercentageOfTotalRevenue_documentation_en-US" xlink:label="lab_tyl_RecurringRevenuePercentageOfTotalRevenue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recurring Revenue Percentage of Total Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecurringRevenuePercentageOfTotalRevenue" xlink:href="tyl-20201231.xsd#tyl_RecurringRevenuePercentageOfTotalRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RecurringRevenuePercentageOfTotalRevenue" xlink:to="lab_tyl_RecurringRevenuePercentageOfTotalRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConvertiblePreferredStockMember_3fe6c2c8-1057-4285-9908-432ef733ed9b_terseLabel_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Convertible Preferred Stock</link:label>
    <link:label id="lab_us-gaap_ConvertiblePreferredStockMember_label_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Convertible Preferred Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertiblePreferredStockMember" xlink:to="lab_us-gaap_ConvertiblePreferredStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_c276d347-eb9e-489b-a9a3-984a68fc09fb_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income tax benefit</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_c1940e17-5e6f-4001-8c08-d4b220081653_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_2c96ab28-8589-4ab3-9424-ca418a93c3da_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving credit facility, maximum borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_3c3d5543-2458-4d07-af7d-ee345e62d176_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_23c6f455-62e5-417a-8795-0347ca10ac5f_negatedLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_873dec5c-84eb-4244-9abe-0f85489c20b7_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortizable intangibles, Accumulated Amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_18abb36c-fb60-429d-8b49-87f99ba9c5c7_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_f3dfc03a-da86-4a78-b65f-7e8cbe1ed591_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares authorized (shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_1a1124e3-c4e0-47b5-83a7-c426de6454cf_terseLabel_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Typical contract term (in years)</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_label_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Typical Contract Term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_documentation_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Typical Contract Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:to="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_0f50f2d8-2987-475a-bd52-7a616bde9ebb_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_8bfcc69c-e798-4160-9a4e-75c7bd591a29_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment of contingent consideration</link:label>
    <link:label id="lab_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_31a230e3-9f53-4d43-bfc5-c5ee7ba455b5_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment for contingent consideration</link:label>
    <link:label id="lab_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_label_en-US" xlink:label="lab_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment for Contingent Consideration Liability, Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:to="lab_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermDebtTypeDomain_8d948860-2d60-4bc5-b097-b9ee7077d611_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short Term Debt Type</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtTypeDomain_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term Debt, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain" xlink:to="lab_us-gaap_ShortTermDebtTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_aa38dee3-ce1d-4058-8c34-3b2861b0f7f2_terseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_0383ccd7-1bbc-430b-ac61-4239327c826e_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash used by investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_0f65f49a-1589-46b4-8812-ee8a690ec410_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payment to be Received, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_e1ab2f47-0abc-4268-8533-b91811a7baa2_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Remaining Contractual Life (Years), Outstanding</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_ce2c9cef-a208-4b97-9e72-a2f73a6d7d05_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_d02a810c-7ccb-46fb-ae12-b7460b3279f2_periodStartLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of year</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_f873ebc1-6e75-4c43-a369-694a2dd6bf06_periodEndLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at end of year</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_ec6aaf30-80a3-41a7-ae2e-ef1ddf31ad30_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Income Taxes Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_RecordHoldingsPtyLimitedMember_3adb1bc3-8ca6-49e8-96eb-39135c2f247b_terseLabel_en-US" xlink:label="lab_tyl_RecordHoldingsPtyLimitedMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Record Holdings Pty Limited</link:label>
    <link:label id="lab_tyl_RecordHoldingsPtyLimitedMember_label_en-US" xlink:label="lab_tyl_RecordHoldingsPtyLimitedMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Record Holdings Pty Limited [Member]</link:label>
    <link:label id="lab_tyl_RecordHoldingsPtyLimitedMember_documentation_en-US" xlink:label="lab_tyl_RecordHoldingsPtyLimitedMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Record Holdings Pty Limited.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecordHoldingsPtyLimitedMember" xlink:href="tyl-20201231.xsd#tyl_RecordHoldingsPtyLimitedMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RecordHoldingsPtyLimitedMember" xlink:to="lab_tyl_RecordHoldingsPtyLimitedMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f88a26ba-2307-401f-872e-928abd7f99f3_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_68722a51-46d9-465a-9298-8f5182b686ce_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_5ce4ae42-2628-419c-b50c-cf3fcb503bb3_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_e51032da-f3ce-4880-aaca-7594f0a246fd_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">PROPERTY AND EQUIPMENT, NET</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValue_5c10281a-9c26-4a61-beb4-6d091663ac83_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury stock, at cost; 7,608,627 and 8,839,352 shares in 2020 and 2019, respectively</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValue_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValue" xlink:to="lab_us-gaap_TreasuryStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubscriptionAndCirculationMember_c54186eb-b3eb-4658-aacc-f846022fe64e_terseLabel_en-US" xlink:label="lab_us-gaap_SubscriptionAndCirculationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subscriptions</link:label>
    <link:label id="lab_us-gaap_SubscriptionAndCirculationMember_label_en-US" xlink:label="lab_us-gaap_SubscriptionAndCirculationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subscription and Circulation [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubscriptionAndCirculationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubscriptionAndCirculationMember" xlink:to="lab_us-gaap_SubscriptionAndCirculationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_9e8a9c34-1923-4816-a9a5-a3716c9a784e_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">EARNINGS PER SHARE</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock" xlink:to="lab_us-gaap_EarningsPerShareTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_DenominatorAbstract_c2704e1c-b4ee-4c9b-9cfe-7844018ac7cc_terseLabel_en-US" xlink:label="lab_tyl_DenominatorAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Denominator:</link:label>
    <link:label id="lab_tyl_DenominatorAbstract_label_en-US" xlink:label="lab_tyl_DenominatorAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Denominator [Abstract]</link:label>
    <link:label id="lab_tyl_DenominatorAbstract_documentation_en-US" xlink:label="lab_tyl_DenominatorAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Denominator [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DenominatorAbstract" xlink:href="tyl-20201231.xsd#tyl_DenominatorAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_DenominatorAbstract" xlink:to="lab_tyl_DenominatorAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_03fcb49b-8cdd-419b-bcf9-03205dfce99c_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tyl_AppraisalServicesMember_e432784b-a227-4f7b-8f7b-0498590eace1_terseLabel_en-US" xlink:label="lab_tyl_AppraisalServicesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Appraisal services</link:label>
    <link:label id="lab_tyl_AppraisalServicesMember_label_en-US" xlink:label="lab_tyl_AppraisalServicesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Appraisal Services [Member]</link:label>
    <link:label id="lab_tyl_AppraisalServicesMember_documentation_en-US" xlink:label="lab_tyl_AppraisalServicesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Appraisal Services [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AppraisalServicesMember" xlink:to="lab_tyl_AppraisalServicesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_f45fa463-2905-4d18-aade-369038b1faf1_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_label_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityShellCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_d8d1d82e-89aa-4596-baa5-be357e12f9e1_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information</link:label>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems" xlink:to="lab_us-gaap_SegmentReportingInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_09b0bade-4a9a-4088-bdd3-d4e8cc2cb5d7_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee taxes paid for withheld shares for taxes upon equity award settlement (in shares)</link:label>
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_28304fbc-b78c-4b4c-91be-5029eba32d70_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recently Adopted Accounting Pronouncements and New Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityPublicFloat_27cd7558-4cb8-4a72-b946-7267d2354338_terseLabel_en-US" xlink:label="lab_dei_EntityPublicFloat" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Public Float</link:label>
    <link:label id="lab_dei_EntityPublicFloat_label_en-US" xlink:label="lab_dei_EntityPublicFloat" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Public Float</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityPublicFloat" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityPublicFloat"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityPublicFloat" xlink:to="lab_dei_EntityPublicFloat" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_be9dc2bd-e062-4f9c-a3fc-61a3e638f975_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermInvestments_4f3af8cf-8178-4a9d-88d4-6c1a56ede9ce_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term investments</link:label>
    <link:label id="lab_us-gaap_ShortTermInvestments_label_en-US" xlink:label="lab_us-gaap_ShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermInvestments" xlink:to="lab_us-gaap_ShortTermInvestments" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>10
<FILENAME>tyl-20201231_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:cb70be07-24b1-4aa6-9599-1da6bf66cbac,g:07fa3be8-7f1e-4f83-baed-fe8860b305ca-->
<link:linkbase 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" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.tylertech.com/role/Cover" xlink:type="simple" xlink:href="tyl-20201231.xsd#Cover"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/Cover" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_f835f38f-296a-4909-9432-12f808e4e257" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_DocumentType_f835f38f-296a-4909-9432-12f808e4e257" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentAnnualReport_6531ff5c-307f-4c99-9030-93c036b994ae" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentAnnualReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_DocumentAnnualReport_6531ff5c-307f-4c99-9030-93c036b994ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_c0bab254-4c25-4b2d-8ec3-074782d8bccb" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_DocumentPeriodEndDate_c0bab254-4c25-4b2d-8ec3-074782d8bccb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_546c1981-b334-48cd-be65-8755c67ac583" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_CurrentFiscalYearEndDate_546c1981-b334-48cd-be65-8755c67ac583" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_dd40966a-7782-4185-8c33-050af48b5c7f" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_DocumentTransitionReport_dd40966a-7782-4185-8c33-050af48b5c7f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_9a1fcd99-a87d-4bc7-bf88-268a0a709bf7" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityFileNumber_9a1fcd99-a87d-4bc7-bf88-268a0a709bf7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_734d566d-4cb1-45a1-80b7-ac00294d657c" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityRegistrantName_734d566d-4cb1-45a1-80b7-ac00294d657c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_87b34919-19f8-4008-acc0-8c66d14e807d" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityIncorporationStateCountryCode_87b34919-19f8-4008-acc0-8c66d14e807d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_59e994ed-3608-4f6a-b7fa-33bfe553a993" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityTaxIdentificationNumber_59e994ed-3608-4f6a-b7fa-33bfe553a993" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_76fb91af-e974-4b6c-98fb-f36a2a9c4bfa" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityAddressAddressLine1_76fb91af-e974-4b6c-98fb-f36a2a9c4bfa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_167c9148-a7a9-49cf-a729-68a12ced1de2" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityAddressCityOrTown_167c9148-a7a9-49cf-a729-68a12ced1de2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_17fb8e93-de8d-45d6-ac5f-1fc592e49f08" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityAddressStateOrProvince_17fb8e93-de8d-45d6-ac5f-1fc592e49f08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_bde1b1ef-87a5-4310-a840-8e5c0f5b328a" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityAddressPostalZipCode_bde1b1ef-87a5-4310-a840-8e5c0f5b328a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_06e765ff-78db-4f2d-bcd5-e733acdc52c0" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_CityAreaCode_06e765ff-78db-4f2d-bcd5-e733acdc52c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_18394f9d-b21e-4219-80f5-6385017c1f12" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_LocalPhoneNumber_18394f9d-b21e-4219-80f5-6385017c1f12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_c83d1b1e-48e3-48c4-92cd-fdc0cae50478" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_Security12bTitle_c83d1b1e-48e3-48c4-92cd-fdc0cae50478" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_de5e6a2b-34f3-483f-a084-6684486e17aa" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_TradingSymbol_de5e6a2b-34f3-483f-a084-6684486e17aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_48838cf6-816f-46b0-a321-2412cbd0c0b1" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_SecurityExchangeName_48838cf6-816f-46b0-a321-2412cbd0c0b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_3e1a9cbb-27f2-4286-a4e1-ac12570ec9d5" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityWellKnownSeasonedIssuer_3e1a9cbb-27f2-4286-a4e1-ac12570ec9d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityVoluntaryFilers_cc62670e-c4e7-49c2-8f61-17b2092c843c" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityVoluntaryFilers"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityVoluntaryFilers_cc62670e-c4e7-49c2-8f61-17b2092c843c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_ff10fa65-0539-4b59-986c-cb2df03a9ec3" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityCurrentReportingStatus_ff10fa65-0539-4b59-986c-cb2df03a9ec3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_IcfrAuditorAttestationFlag_7e6dee4f-7349-476c-a8ff-7bd950916add" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_IcfrAuditorAttestationFlag"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_IcfrAuditorAttestationFlag_7e6dee4f-7349-476c-a8ff-7bd950916add" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_9cd76e4f-b585-4588-aa56-c0342830b6fe" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityInteractiveDataCurrent_9cd76e4f-b585-4588-aa56-c0342830b6fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_cebf36a2-f87e-4252-8fcc-6614f95e5d0f" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityFilerCategory_cebf36a2-f87e-4252-8fcc-6614f95e5d0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_bb349844-bbc8-473d-93f8-8d954ae63381" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntitySmallBusiness_bb349844-bbc8-473d-93f8-8d954ae63381" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_f80cad1f-d9b8-4202-9e14-a69bc5bed498" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityEmergingGrowthCompany_f80cad1f-d9b8-4202-9e14-a69bc5bed498" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_abe4ac53-c8e6-43ce-a075-01aabb518627" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityShellCompany_abe4ac53-c8e6-43ce-a075-01aabb518627" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityPublicFloat_419bc557-af22-4c98-a552-96d4c0751f44" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityPublicFloat"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityPublicFloat_419bc557-af22-4c98-a552-96d4c0751f44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_73b642fd-00d7-41d0-8d81-ca8242b643bb" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_73b642fd-00d7-41d0-8d81-ca8242b643bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock_ceaa7858-2b85-4955-bab2-ffc553488383" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentsIncorporatedByReferenceTextBlock"/>
    <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_DocumentsIncorporatedByReferenceTextBlock_ceaa7858-2b85-4955-bab2-ffc553488383" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_3c4a8e07-3a80-4fdb-bb2a-c809998cc320" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="31" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_AmendmentFlag_3c4a8e07-3a80-4fdb-bb2a-c809998cc320" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_b34a9197-603c-4750-9b06-7ee792bf6a69" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="32" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_DocumentFiscalYearFocus_b34a9197-603c-4750-9b06-7ee792bf6a69" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_00342f88-5784-466a-83f9-87a4962d31b1" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="33" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_DocumentFiscalPeriodFocus_00342f88-5784-466a-83f9-87a4962d31b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_e5730b8b-73dc-4588-b108-e34f383aeacb" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="34" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_7a7b1d1b-28a4-4f8a-92b8-e564514a7e47" xlink:to="loc_dei_EntityCentralIndexKey_e5730b8b-73dc-4588-b108-e34f383aeacb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_af91e25f-b2c5-4e1b-bf8e-a498507ed905" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_1a605a4d-50c3-46f8-8229-71557d935225" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_af91e25f-b2c5-4e1b-bf8e-a498507ed905" xlink:to="loc_us-gaap_StatementTable_1a605a4d-50c3-46f8-8229-71557d935225" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1a605a4d-50c3-46f8-8229-71557d935225" xlink:to="loc_srt_ProductOrServiceAxis_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_97d8a3b1-4e56-423f-b43b-05a7cb5ad5ca" xlink:to="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareLicensesandRoyaltiesMember_d38d5073-414a-4203-baf5-d71befcae664" xlink:href="tyl-20201231.xsd#tyl_SoftwareLicensesandRoyaltiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_SoftwareLicensesandRoyaltiesMember_d38d5073-414a-4203-baf5-d71befcae664" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_f39f9da8-ab65-4fc4-ad42-6035e0765ba6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubscriptionAndCirculationMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_f39f9da8-ab65-4fc4-ad42-6035e0765ba6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyServiceMember_422f851a-b201-4257-8a53-15e4fb13aa28" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TechnologyServiceMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_us-gaap_TechnologyServiceMember_422f851a-b201-4257-8a53-15e4fb13aa28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaintenanceMember_641e082d-7df9-4fb7-b76a-d5c6151537ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MaintenanceMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_us-gaap_MaintenanceMember_641e082d-7df9-4fb7-b76a-d5c6151537ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AcquiredSoftwareMember_bf79da77-b7a8-49ce-bfb3-3af93cc80a8c" xlink:href="tyl-20201231.xsd#tyl_AcquiredSoftwareMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_AcquiredSoftwareMember_bf79da77-b7a8-49ce-bfb3-3af93cc80a8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_cc0dfc84-fee0-49e5-85d4-f786a016266e" xlink:href="tyl-20201231.xsd#tyl_SoftwareServicesMaintenanceandSubscriptionsMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_cc0dfc84-fee0-49e5-85d4-f786a016266e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember_7de7b607-fa6d-4f37-bf5f-5890b5e9a473" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_AppraisalServicesMember_7de7b607-fa6d-4f37-bf5f-5890b5e9a473" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_HardwareandOtherMember_a9079645-cdc3-4d4e-aa1f-393994b1d0a3" xlink:href="tyl-20201231.xsd#tyl_HardwareandOtherMember"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c99a5789-c228-4b9a-9aa2-79547bc63a00" xlink:to="loc_tyl_HardwareandOtherMember_a9079645-cdc3-4d4e-aa1f-393994b1d0a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1a605a4d-50c3-46f8-8229-71557d935225" xlink:to="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesAbstract_a72b4e03-95df-4d09-972a-418d1be672ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenuesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_RevenuesAbstract_a72b4e03-95df-4d09-972a-418d1be672ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a9d758f7-0a9f-4806-acc7-617cfb8f5a59" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_a72b4e03-95df-4d09-972a-418d1be672ef" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a9d758f7-0a9f-4806-acc7-617cfb8f5a59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract_ae8eb632-308e-4142-8ef7-b555854604bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_CostOfRevenueAbstract_ae8eb632-308e-4142-8ef7-b555854604bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_6f80e6fa-d224-4c08-92e4-6329eeee3b1e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ae8eb632-308e-4142-8ef7-b555854604bb" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_6f80e6fa-d224-4c08-92e4-6329eeee3b1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_f81cec92-6eaf-483b-85e6-092303702d8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_GrossProfit_f81cec92-6eaf-483b-85e6-092303702d8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_56bda08e-78db-45fc-8b4d-646ca6cac2f9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_56bda08e-78db-45fc-8b4d-646ca6cac2f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_0afc539e-a7ee-44c2-b5b9-7c8ab0fbdd73" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_0afc539e-a7ee-44c2-b5b9-7c8ab0fbdd73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_a2addd15-e817-4628-99a5-bab4df6e9610" xlink:href="tyl-20201231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_a2addd15-e817-4628-99a5-bab4df6e9610" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_95bd1404-a725-495c-8f4b-b480812d1710" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_OperatingIncomeLoss_95bd1404-a725-495c-8f4b-b480812d1710" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_c7bc5092-5325-4f30-b19d-64cd0c1380da" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_c7bc5092-5325-4f30-b19d-64cd0c1380da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_423d90c9-4e35-49e1-a802-f8f584dabeb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_423d90c9-4e35-49e1-a802-f8f584dabeb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_44c6fb04-3361-43f7-8823-0879e64b18a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_44c6fb04-3361-43f7-8823-0879e64b18a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_fefd6175-0f7d-46f1-9baf-014567fc9287" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_NetIncomeLoss_fefd6175-0f7d-46f1-9baf-014567fc9287" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_e3d82198-13aa-44f9-8c48-f6df7f7bbe37" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d4d529b6-1abd-4eff-982a-8bf152c8730d" xlink:to="loc_us-gaap_EarningsPerShareAbstract_e3d82198-13aa-44f9-8c48-f6df7f7bbe37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_b38b4a41-a671-4a4f-8d32-cc0295af6fe7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_e3d82198-13aa-44f9-8c48-f6df7f7bbe37" xlink:to="loc_us-gaap_EarningsPerShareBasic_b38b4a41-a671-4a4f-8d32-cc0295af6fe7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_ea157b21-d518-4756-9f7c-a7455e2aca8c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_e3d82198-13aa-44f9-8c48-f6df7f7bbe37" xlink:to="loc_us-gaap_EarningsPerShareDiluted_ea157b21-d518-4756-9f7c-a7455e2aca8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedBalanceSheets"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_ded176e2-80ad-498b-8e42-da8928ff1a23" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_65311f35-dcd9-4a37-85d6-92b6c5663c42" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_ded176e2-80ad-498b-8e42-da8928ff1a23" xlink:to="loc_us-gaap_AssetsAbstract_65311f35-dcd9-4a37-85d6-92b6c5663c42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_65311f35-dcd9-4a37-85d6-92b6c5663c42" xlink:to="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_76c671ec-a1ce-4701-9b3d-d9b92f46986b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_76c671ec-a1ce-4701-9b3d-d9b92f46986b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_f82b00ff-c64d-45d8-9bce-c1b148099662" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_f82b00ff-c64d-45d8-9bce-c1b148099662" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestments_89607cf3-6754-4d7f-8234-6c5a15dab58e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermInvestments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:to="loc_us-gaap_ShortTermInvestments_89607cf3-6754-4d7f-8234-6c5a15dab58e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrent_420d7532-8c29-4599-b4ab-e466076a36f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:to="loc_us-gaap_PrepaidExpenseCurrent_420d7532-8c29-4599-b4ab-e466076a36f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReceivable_f40d3c71-3498-4437-ac83-396476ca7eab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReceivable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:to="loc_us-gaap_IncomeTaxReceivable_f40d3c71-3498-4437-ac83-396476ca7eab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsCurrent_c048cd55-824f-4ac4-961d-f030e32942c9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:to="loc_us-gaap_OtherAssetsCurrent_c048cd55-824f-4ac4-961d-f030e32942c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_a90376f4-9c0c-4aea-8bff-cd8e501d4768" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_628d8987-c3a3-4e5f-8e7d-37baf4e31ab3" xlink:to="loc_us-gaap_AssetsCurrent_a90376f4-9c0c-4aea-8bff-cd8e501d4768" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetNoncurrent_d0338716-0b18-4850-a065-33a851b30079" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_65311f35-dcd9-4a37-85d6-92b6c5663c42" xlink:to="loc_us-gaap_AccountsReceivableNetNoncurrent_d0338716-0b18-4850-a065-33a851b30079" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_df5460fa-313b-4ab2-a62e-8a4446e8a639" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_65311f35-dcd9-4a37-85d6-92b6c5663c42" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_df5460fa-313b-4ab2-a62e-8a4446e8a639" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_75ac995d-532e-424e-96b6-f2a15d2b0808" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_65311f35-dcd9-4a37-85d6-92b6c5663c42" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_75ac995d-532e-424e-96b6-f2a15d2b0808" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrentAbstract_fa953b57-48f9-4d9e-b42e-15092e5f7b33" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsNoncurrentAbstract"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_65311f35-dcd9-4a37-85d6-92b6c5663c42" xlink:to="loc_us-gaap_OtherAssetsNoncurrentAbstract_fa953b57-48f9-4d9e-b42e-15092e5f7b33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_d6e143c2-12f5-4a3d-ad73-ef1f134fa750" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract_fa953b57-48f9-4d9e-b42e-15092e5f7b33" xlink:to="loc_us-gaap_Goodwill_d6e143c2-12f5-4a3d-ad73-ef1f134fa750" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_844bac77-88e7-43b3-8445-6ec6d8df41de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract_fa953b57-48f9-4d9e-b42e-15092e5f7b33" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_844bac77-88e7-43b3-8445-6ec6d8df41de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Investments_08d6909c-2b83-4489-b037-ceba4f031a67" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Investments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract_fa953b57-48f9-4d9e-b42e-15092e5f7b33" xlink:to="loc_us-gaap_Investments_08d6909c-2b83-4489-b037-ceba4f031a67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_2e1e8032-c782-4ac9-9af1-8073a26df3a4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract_fa953b57-48f9-4d9e-b42e-15092e5f7b33" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_2e1e8032-c782-4ac9-9af1-8073a26df3a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_ac7ec2c7-6fad-40c1-a7e8-4066f622a90c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_65311f35-dcd9-4a37-85d6-92b6c5663c42" xlink:to="loc_us-gaap_Assets_ac7ec2c7-6fad-40c1-a7e8-4066f622a90c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_ded176e2-80ad-498b-8e42-da8928ff1a23" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_443a017a-a8a7-4c59-b6b4-e62cb9622d9b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_443a017a-a8a7-4c59-b6b4-e62cb9622d9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_bd9ac609-2348-4d8c-9245-e6b9e794de9f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_443a017a-a8a7-4c59-b6b4-e62cb9622d9b" xlink:to="loc_us-gaap_AccountsPayableCurrent_bd9ac609-2348-4d8c-9245-e6b9e794de9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_032de1f3-aa2d-4855-84ef-ce466bebe881" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_443a017a-a8a7-4c59-b6b4-e62cb9622d9b" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_032de1f3-aa2d-4855-84ef-ce466bebe881" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_8f61e147-8d81-4e58-be4a-2b70fb9b2cd5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_443a017a-a8a7-4c59-b6b4-e62cb9622d9b" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_8f61e147-8d81-4e58-be4a-2b70fb9b2cd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_d74d6e49-4379-453e-b06b-0b5ccb079663" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_443a017a-a8a7-4c59-b6b4-e62cb9622d9b" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_d74d6e49-4379-453e-b06b-0b5ccb079663" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_34f98606-12e7-4571-8392-3b6bd4bbeae9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_443a017a-a8a7-4c59-b6b4-e62cb9622d9b" xlink:to="loc_us-gaap_LiabilitiesCurrent_34f98606-12e7-4571-8392-3b6bd4bbeae9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermLineOfCredit_383cb46f-88ff-4525-afbe-eac50afd2c74" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermLineOfCredit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:to="loc_us-gaap_LongTermLineOfCredit_383cb46f-88ff-4525-afbe-eac50afd2c74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_99f2e909-d5e4-4fde-be22-74a19a5e666a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_99f2e909-d5e4-4fde-be22-74a19a5e666a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_09b753b0-c83a-4e16-9dff-03e718e0db72" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_09b753b0-c83a-4e16-9dff-03e718e0db72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_50ec3127-af86-484e-b346-32e8d4bf892f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_50ec3127-af86-484e-b346-32e8d4bf892f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_328b825b-b559-424c-a953-ecdf7f971b6f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:to="loc_us-gaap_CommitmentsAndContingencies_328b825b-b559-424c-a953-ecdf7f971b6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:to="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_a6a3b1f0-9700-4c6d-aede-b46f04f57679" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:to="loc_us-gaap_PreferredStockValue_a6a3b1f0-9700-4c6d-aede-b46f04f57679" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_6d7e19b1-bed6-4040-9ee7-fa53308a0d3a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:to="loc_us-gaap_CommonStockValue_6d7e19b1-bed6-4040-9ee7-fa53308a0d3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_3e4fd050-6b65-4a8c-9deb-e3677aa86a5a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_3e4fd050-6b65-4a8c-9deb-e3677aa86a5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_19fbc072-958e-406b-a4b6-640c4562c7d7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_19fbc072-958e-406b-a4b6-640c4562c7d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_5be53cc8-6b82-4775-b6b5-06c7376267dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_5be53cc8-6b82-4775-b6b5-06c7376267dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_4fc945f7-c03b-42f2-825e-e8da4537ffdf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:to="loc_us-gaap_TreasuryStockValue_4fc945f7-c03b-42f2-825e-e8da4537ffdf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_ad42566c-72b2-4b51-83be-8d9c28906dca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_f20ead2e-ce55-48ce-8052-854314abbe71" xlink:to="loc_us-gaap_StockholdersEquity_ad42566c-72b2-4b51-83be-8d9c28906dca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_a3576717-46f5-4fcb-93bd-6110c1a2b639" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_3790d2e4-40be-4ba7-8296-3dbd18c50f9e" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_a3576717-46f5-4fcb-93bd-6110c1a2b639" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedBalanceSheetsParenthetical"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_74abf2fb-0922-46dd-ba5b-b0a397431832" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_74abf2fb-0922-46dd-ba5b-b0a397431832" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_fdc230f4-28af-4e99-a428-14984e64422c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_fdc230f4-28af-4e99-a428-14984e64422c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_4c3eadad-1bf3-4b2f-950a-312b40d6965b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_4c3eadad-1bf3-4b2f-950a-312b40d6965b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued_ea1d6e71-88b0-46bc-bd7b-7c01165d149a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:to="loc_us-gaap_PreferredStockSharesIssued_ea1d6e71-88b0-46bc-bd7b-7c01165d149a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_846e113b-9f95-4d4e-8d52-ac3e61ca3870" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_846e113b-9f95-4d4e-8d52-ac3e61ca3870" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_e988d643-c506-4186-acbe-c3411f6642e9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_e988d643-c506-4186-acbe-c3411f6642e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_38a0ada0-7da8-473c-802e-838bc4dd30f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:to="loc_us-gaap_CommonStockSharesIssued_38a0ada0-7da8-473c-802e-838bc4dd30f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockShares_d5ec9114-0e0e-4e73-92f4-97fd42cb9034" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockShares"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_727b22bb-8a59-48de-9139-ec342c1f905e" xlink:to="loc_us-gaap_TreasuryStockShares_d5ec9114-0e0e-4e73-92f4-97fd42cb9034" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_6dd9ec7d-405a-4cef-a7b4-9eea1403873c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_d178f819-8cd1-4798-9685-a2e933f91a68" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_6dd9ec7d-405a-4cef-a7b4-9eea1403873c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_d178f819-8cd1-4798-9685-a2e933f91a68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_b0bbff2c-3a44-4bcf-9b4d-cda7c785f4ca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_d178f819-8cd1-4798-9685-a2e933f91a68" xlink:to="loc_us-gaap_NetIncomeLoss_b0bbff2c-3a44-4bcf-9b4d-cda7c785f4ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_8e4c0456-d882-4ee6-a986-f8249b3b9540" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_d178f819-8cd1-4798-9685-a2e933f91a68" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_8e4c0456-d882-4ee6-a986-f8249b3b9540" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_78a6be92-cd12-4a48-aebb-86f7c00c627d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_8e4c0456-d882-4ee6-a986-f8249b3b9540" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_78a6be92-cd12-4a48-aebb-86f7c00c627d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_4d178fbc-d66d-49fe-93af-c674a73d0220" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_8e4c0456-d882-4ee6-a986-f8249b3b9540" xlink:to="loc_us-gaap_ShareBasedCompensation_4d178fbc-d66d-49fe-93af-c674a73d0220" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_dabaaeb1-1d5d-48bd-8203-d2a3df4a18da" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_8e4c0456-d882-4ee6-a986-f8249b3b9540" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_dabaaeb1-1d5d-48bd-8203-d2a3df4a18da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_d18b2332-dec0-4d70-abdf-f84e9ebbd3da" xlink:href="tyl-20201231.xsd#tyl_OperatingLeaseRightOfUseAssetsNonCash"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_8e4c0456-d882-4ee6-a986-f8249b3b9540" xlink:to="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_d18b2332-dec0-4d70-abdf-f84e9ebbd3da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_e9821c40-fe7d-45e6-b053-c85f9870f1a6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_8e4c0456-d882-4ee6-a986-f8249b3b9540" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_e9821c40-fe7d-45e6-b053-c85f9870f1a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_8e4c0456-d882-4ee6-a986-f8249b3b9540" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_9c1c15ff-4bfe-414a-8dc8-644c085116e3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_9c1c15ff-4bfe-414a-8dc8-644c085116e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_a6d9e71d-c94d-4c32-ab47-14603fd02275" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_a6d9e71d-c94d-4c32-ab47-14603fd02275" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_1bb78236-599e-4a56-8348-3f2651be4c51" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_1bb78236-599e-4a56-8348-3f2651be4c51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_67d0a85e-5d22-4615-9b7d-463d71c33918" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_67d0a85e-5d22-4615-9b7d-463d71c33918" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_eab4ee5f-4b27-49d6-92cb-73be650d1eaa" xlink:href="tyl-20201231.xsd#tyl_IncreaseDecreaseInOperatingLeaseLiabilities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:to="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_eab4ee5f-4b27-49d6-92cb-73be650d1eaa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_127c9540-8f4f-4fbd-a354-c070414d1718" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_127c9540-8f4f-4fbd-a354-c070414d1718" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_e9a54833-1dbb-4ac2-bf0a-1a9e784d287c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_d08157b1-7c3f-4159-a4fd-2e7d21f2bd1b" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_e9a54833-1dbb-4ac2-bf0a-1a9e784d287c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_71bc348f-5b66-470b-b98c-f0306d0b8ad4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_d178f819-8cd1-4798-9685-a2e933f91a68" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_71bc348f-5b66-470b-b98c-f0306d0b8ad4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_6dd9ec7d-405a-4cef-a7b4-9eea1403873c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9e3edd7d-ec7f-4bdb-97a9-3008cfb95d43" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9e3edd7d-ec7f-4bdb-97a9-3008cfb95d43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities_3ce2729a-63e0-4aae-bed9-aeef5a72c1c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_PaymentsToAcquireMarketableSecurities_3ce2729a-63e0-4aae-bed9-aeef5a72c1c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_9cc19021-223f-4916-bae9-1e14dc731918" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_9cc19021-223f-4916-bae9-1e14dc731918" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_78e7b6a5-35cf-47ca-aefa-e13dec7d6deb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireEquityMethodInvestments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_78e7b6a5-35cf-47ca-aefa-e13dec7d6deb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfEquityMethodInvestments_7e0b85dd-3bbe-498e-954b-6ed408d7cf6d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromSaleOfEquityMethodInvestments"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_ProceedsFromSaleOfEquityMethodInvestments_7e0b85dd-3bbe-498e-954b-6ed408d7cf6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForSoftware_935263ed-ac16-47dd-90a9-0d43dfc2eead" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForSoftware"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_PaymentsForSoftware_935263ed-ac16-47dd-90a9-0d43dfc2eead" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_a35aaeee-3a4c-4915-9ae3-1000c9fbe250" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_a35aaeee-3a4c-4915-9ae3-1000c9fbe250" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_9eda51c1-1afa-4c21-93c5-d63c6afdb6a9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_9eda51c1-1afa-4c21-93c5-d63c6afdb6a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_6b651972-9d2a-4ea0-a603-6c2b172a58b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd700372-4131-423f-89ac-8e7d27bacd21" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_6b651972-9d2a-4ea0-a603-6c2b172a58b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0bb44e91-a4de-4c17-9433-54b18e05a9f6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_6dd9ec7d-405a-4cef-a7b4-9eea1403873c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0bb44e91-a4de-4c17-9433-54b18e05a9f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit_5966c508-a736-4757-a47b-0937f9b04601" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0bb44e91-a4de-4c17-9433-54b18e05a9f6" xlink:to="loc_us-gaap_RepaymentsOfLinesOfCredit_5966c508-a736-4757-a47b-0937f9b04601" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_99f5d72f-c672-41d6-bb6c-a0e6d65b34f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0bb44e91-a4de-4c17-9433-54b18e05a9f6" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_99f5d72f-c672-41d6-bb6c-a0e6d65b34f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_c885e3be-5058-4f7b-a1f3-20796e090cce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0bb44e91-a4de-4c17-9433-54b18e05a9f6" xlink:to="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_c885e3be-5058-4f7b-a1f3-20796e090cce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_c45855a7-4e5d-46cd-bcd8-28de2771c94c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0bb44e91-a4de-4c17-9433-54b18e05a9f6" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_c45855a7-4e5d-46cd-bcd8-28de2771c94c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockPlans_d289818e-e7b5-4d99-9059-c84da1a27380" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromStockPlans"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0bb44e91-a4de-4c17-9433-54b18e05a9f6" xlink:to="loc_us-gaap_ProceedsFromStockPlans_d289818e-e7b5-4d99-9059-c84da1a27380" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_ea9c65d8-65ee-40bc-9150-8b539254da7c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0bb44e91-a4de-4c17-9433-54b18e05a9f6" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_ea9c65d8-65ee-40bc-9150-8b539254da7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_24eed6a6-3244-4b8a-9e3b-37cde322c525" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_6dd9ec7d-405a-4cef-a7b4-9eea1403873c" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_24eed6a6-3244-4b8a-9e3b-37cde322c525" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_81655667-fdb4-4ea0-aaa0-b1e6bcb9cd63" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_6dd9ec7d-405a-4cef-a7b4-9eea1403873c" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_81655667-fdb4-4ea0-aaa0-b1e6bcb9cd63" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_c37ff9be-5549-4560-a17a-3302812989ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_6dd9ec7d-405a-4cef-a7b4-9eea1403873c" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_c37ff9be-5549-4560-a17a-3302812989ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity" xlink:type="simple" xlink:href="tyl-20201231.xsd#ConsolidatedStatementsofShareholdersEquity"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_858eba8b-8712-4af8-9161-ed422c91b763" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_858eba8b-8712-4af8-9161-ed422c91b763" xlink:to="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_1568b292-b8fa-4797-98b2-5f0d7930fefc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_1568b292-b8fa-4797-98b2-5f0d7930fefc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_1568b292-b8fa-4797-98b2-5f0d7930fefc" xlink:to="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_0d77c8e5-e091-4859-a37c-adabda760778" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_CommonStockMember_0d77c8e5-e091-4859-a37c-adabda760778" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_cae24689-129b-4de1-a31c-b2db763314fd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_cae24689-129b-4de1-a31c-b2db763314fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_05cfe71c-8d9f-41b3-b627-14f72610f7bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_05cfe71c-8d9f-41b3-b627-14f72610f7bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_edab2051-245d-4931-acb5-121dea0fc1d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_RetainedEarningsMember_edab2051-245d-4931-acb5-121dea0fc1d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_63f0631b-4ce8-4e19-b48a-9b87727460fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_b4f0bfd4-7cfa-4762-a6af-23022d04aab5" xlink:to="loc_us-gaap_TreasuryStockMember_63f0631b-4ce8-4e19-b48a-9b87727460fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_6ea82c06-e47f-42e5-8639-71199aadf7bf" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_6ea82c06-e47f-42e5-8639-71199aadf7bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_848af505-f469-41ab-a740-694e1f14d516" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_6ea82c06-e47f-42e5-8639-71199aadf7bf" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_848af505-f469-41ab-a740-694e1f14d516" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_7d89bb73-0131-4ab8-ade1-91356c49611e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_848af505-f469-41ab-a740-694e1f14d516" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_7d89bb73-0131-4ab8-ade1-91356c49611e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_12d074ad-888f-4f99-9298-09807be8190a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_e8480242-3f0a-4ba0-90c4-618d0084ca41" xlink:to="loc_us-gaap_StatementLineItems_12d074ad-888f-4f99-9298-09807be8190a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_12d074ad-888f-4f99-9298-09807be8190a" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_db46a7eb-c74b-499c-87d0-675036934942" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockholdersEquity_db46a7eb-c74b-499c-87d0-675036934942" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued_ac28b5d0-f474-4704-9a9d-914824a68c1a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesIssued"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_SharesIssued_ac28b5d0-f474-4704-9a9d-914824a68c1a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_c00756fc-b654-4cb0-afe8-6b89238905fd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_NetIncomeLoss_c00756fc-b654-4cb0-afe8-6b89238905fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_e4e3b4ba-299a-49d5-a0b6-b6e8e3e69359" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_e4e3b4ba-299a-49d5-a0b6-b6e8e3e69359" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_1b6c7087-e6da-4fd9-bc6a-e8ee755c1e1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_1b6c7087-e6da-4fd9-bc6a-e8ee755c1e1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_fee64e51-453f-4890-9cd3-4ae56a54a57c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_fee64e51-453f-4890-9cd3-4ae56a54a57c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7cb56a15-e051-482c-b258-f447732b9d3c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7cb56a15-e051-482c-b258-f447732b9d3c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_9b2e861a-84cc-4a64-b658-7200a929e814" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_9b2e861a-84cc-4a64-b658-7200a929e814" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_5330e7f3-0f0c-4c16-b783-c8de1794e172" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_5330e7f3-0f0c-4c16-b783-c8de1794e172" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_321e4c90-3660-4670-9636-929b0eabdb02" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_321e4c90-3660-4670-9636-929b0eabdb02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_43999d10-2318-4d72-9998-8ff9b813bc08" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_43999d10-2318-4d72-9998-8ff9b813bc08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_490d470b-d4c0-449d-ab5a-23c86fbbeda5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_490d470b-d4c0-449d-ab5a-23c86fbbeda5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_3720b813-adcf-4858-a1c6-c7988a12d65f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_StockholdersEquity_3720b813-adcf-4858-a1c6-c7988a12d65f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesIssued_5134cada-9bf1-491e-b4ae-776367c34e04" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesIssued"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_b95ae311-239e-4259-b9bf-9708df7ebc4a" xlink:to="loc_us-gaap_SharesIssued_5134cada-9bf1-491e-b4ae-776367c34e04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingStandardsUpdateExtensibleList_6533763e-a9f3-4be4-a9fc-7faf27d667bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingStandardsUpdateExtensibleList"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_12d074ad-888f-4f99-9298-09807be8190a" xlink:to="loc_us-gaap_AccountingStandardsUpdateExtensibleList_6533763e-a9f3-4be4-a9fc-7faf27d667bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_fd345f78-45cd-4652-9466-90416bd06382" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_2bf6a9aa-4db9-4e5d-9a37-a478fc3a6275" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_fd345f78-45cd-4652-9466-90416bd06382" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_2bf6a9aa-4db9-4e5d-9a37-a478fc3a6275" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock_4c227c51-c3cd-46cb-8d63-700934667321" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_ConsolidationPolicyTextBlock_4c227c51-c3cd-46cb-8d63-700934667321" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_fd72d867-f6e2-4e74-8e31-8478cafee60d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_fd72d867-f6e2-4e74-8e31-8478cafee60d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_ad1d0fe3-8b66-4b29-945a-88c6a1adbb8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_ad1d0fe3-8b66-4b29-945a-88c6a1adbb8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates_794907a2-99c6-4b45-ab90-52cf0a3dbf14" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UseOfEstimates"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_UseOfEstimates_794907a2-99c6-4b45-ab90-52cf0a3dbf14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_e1b9c216-b3e0-4f00-bd30-7b5721e1e8c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_e1b9c216-b3e0-4f00-bd30-7b5721e1e8c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_01daa241-9322-4126-b167-c232023ec9cc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_IncomeTaxPolicyTextBlock_01daa241-9322-4126-b167-c232023ec9cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_af26937b-64f6-42b7-a6cb-3012d5812a5b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_af26937b-64f6-42b7-a6cb-3012d5812a5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_4efbb0c3-c484-45f2-b399-2f13d745c127" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_4efbb0c3-c484-45f2-b399-2f13d745c127" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_d32adea7-775a-4f58-b132-7433f8c06d55" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_d32adea7-775a-4f58-b132-7433f8c06d55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_fb4f0ac2-401e-4e9a-9559-743395d39e5b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_fb4f0ac2-401e-4e9a-9559-743395d39e5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsPolicy_22b23f99-d93e-4d8a-89ab-6661e23786bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsPolicy"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_BusinessCombinationsPolicy_22b23f99-d93e-4d8a-89ab-6661e23786bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_f642118a-2212-4bae-8f58-2250f6f7c4d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_f642118a-2212-4bae-8f58-2250f6f7c4d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk_1966bc28-15aa-40a2-a940-e38268b56191" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_ConcentrationRiskCreditRisk_1966bc28-15aa-40a2-a940-e38268b56191" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock_b8bcfdab-7917-4af6-b77f-928fc24789ab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeasesPolicyTextBlock"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_LesseeLeasesPolicyTextBlock_b8bcfdab-7917-4af6-b77f-928fc24789ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_d0177482-aaf3-49c8-83bd-76cbe935dd9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_d0177482-aaf3-49c8-83bd-76cbe935dd9d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_370e2bc1-5132-4158-b955-80a38b602f51" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_370e2bc1-5132-4158-b955-80a38b602f51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_575a3b91-dfb6-4627-82b5-eb0760c36467" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_df4d5cb9-18a7-4bcd-ab14-f5102fb4b58a" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_575a3b91-dfb6-4627-82b5-eb0760c36467" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_213dad06-a888-48cf-b26e-9cd04f62f2cc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_dde4eb35-9802-4e2c-b03a-d51313781f3b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_213dad06-a888-48cf-b26e-9cd04f62f2cc" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_dde4eb35-9802-4e2c-b03a-d51313781f3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_5751a5a4-cdcc-485f-a5a2-785c3ec2f218" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:href="tyl-20201231.xsd#tyl_AccountingPoliciesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_5751a5a4-cdcc-485f-a5a2-785c3ec2f218" xlink:to="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_a00703ea-fd03-43a1-854b-b5da2dfa962c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_CreditFacilityAxis_a00703ea-fd03-43a1-854b-b5da2dfa962c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_eab3a157-6b96-4c15-9492-1e0bb80009f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_a00703ea-fd03-43a1-854b-b5da2dfa962c" xlink:to="loc_us-gaap_CreditFacilityDomain_eab3a157-6b96-4c15-9492-1e0bb80009f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_b1501ab2-da35-4957-a881-41291fbdc6ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_eab3a157-6b96-4c15-9492-1e0bb80009f4" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_b1501ab2-da35-4957-a881-41291fbdc6ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_db45e221-4a39-484b-8155-5dae28cf71d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_DebtInstrumentAxis_db45e221-4a39-484b-8155-5dae28cf71d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_dbd89c17-995a-46ee-a5be-a3ae2de198b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_db45e221-4a39-484b-8155-5dae28cf71d3" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_dbd89c17-995a-46ee-a5be-a3ae2de198b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CreditAgreementMember_44b4e55c-c5d6-462f-94a9-93de05ee9c75" xlink:href="tyl-20201231.xsd#tyl_CreditAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_dbd89c17-995a-46ee-a5be-a3ae2de198b0" xlink:to="loc_tyl_CreditAgreementMember_44b4e55c-c5d6-462f-94a9-93de05ee9c75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_f78fa82b-4865-441b-b59c-a4666f47cd99" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_srt_ProductOrServiceAxis_f78fa82b-4865-441b-b59c-a4666f47cd99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_74d34a94-3982-4837-a04a-4b1400efc5d2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_f78fa82b-4865-441b-b59c-a4666f47cd99" xlink:to="loc_srt_ProductsAndServicesDomain_74d34a94-3982-4837-a04a-4b1400efc5d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_db470037-31c4-4c83-bf79-f9817e21dce8" xlink:href="tyl-20201231.xsd#tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_74d34a94-3982-4837-a04a-4b1400efc5d2" xlink:to="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_db470037-31c4-4c83-bf79-f9817e21dce8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember_235d85cb-76df-4e15-8e62-e69d45ee4af8" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_74d34a94-3982-4837-a04a-4b1400efc5d2" xlink:to="loc_tyl_AppraisalServicesMember_235d85cb-76df-4e15-8e62-e69d45ee4af8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesBillingStatusDomain_ef9328bb-4bb4-4589-96cd-8ae329b39e7a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReceivablesBillingStatusDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_2a25c96d-8f70-4f9b-a2ab-4e8e1ee261d3" xlink:to="loc_us-gaap_ReceivablesBillingStatusDomain_ef9328bb-4bb4-4589-96cd-8ae329b39e7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledRevenuesMember_e5577603-5e4b-4a63-a297-18112333f50c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnbilledRevenuesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesBillingStatusDomain_ef9328bb-4bb4-4589-96cd-8ae329b39e7a" xlink:to="loc_us-gaap_UnbilledRevenuesMember_e5577603-5e4b-4a63-a297-18112333f50c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_b3516d75-ea82-45a7-9c44-73513f76341d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_b3516d75-ea82-45a7-9c44-73513f76341d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivableTypeDomain_4cdee742-f3e8-4581-af81-c4a76a6c09dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReceivableTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_b3516d75-ea82-45a7-9c44-73513f76341d" xlink:to="loc_us-gaap_ReceivableTypeDomain_4cdee742-f3e8-4581-af81-c4a76a6c09dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RetentionReceivableMember_b0869973-2dc5-4a0b-8284-ac0db1c9d40a" xlink:href="tyl-20201231.xsd#tyl_RetentionReceivableMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivableTypeDomain_4cdee742-f3e8-4581-af81-c4a76a6c09dc" xlink:to="loc_tyl_RetentionReceivableMember_b0869973-2dc5-4a0b-8284-ac0db1c9d40a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_354f6821-2be0-4f1f-96bb-c5ac2724b2ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_AwardTypeAxis_354f6821-2be0-4f1f-96bb-c5ac2724b2ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_354f6821-2be0-4f1f-96bb-c5ac2724b2ec" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_4d900d91-cf83-4386-9d82-4c2614325b58" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:to="loc_us-gaap_EmployeeStockOptionMember_4d900d91-cf83-4386-9d82-4c2614325b58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_fc61bdc4-ae85-432a-a078-968c8253bee8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_fc61bdc4-ae85-432a-a078-968c8253bee8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_1fc109ec-d0be-4399-9eb8-2decd6ae0091" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0253b21f-5cc2-4995-aa05-2884abbcc0ee" xlink:to="loc_us-gaap_PerformanceSharesMember_1fc109ec-d0be-4399-9eb8-2decd6ae0091" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_fb08961e-8ebd-4851-9726-37150eeb03ed" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_srt_RangeAxis_fb08961e-8ebd-4851-9726-37150eeb03ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_041d22f7-baf2-45e7-963d-ebaf63b9ccd2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_fb08961e-8ebd-4851-9726-37150eeb03ed" xlink:to="loc_srt_RangeMember_041d22f7-baf2-45e7-963d-ebaf63b9ccd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_2d8acaf9-3a53-4cdc-8841-dcce47dce98f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_041d22f7-baf2-45e7-963d-ebaf63b9ccd2" xlink:to="loc_srt_MinimumMember_2d8acaf9-3a53-4cdc-8841-dcce47dce98f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_22201e02-4944-47a3-851a-cf6135094469" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_041d22f7-baf2-45e7-963d-ebaf63b9ccd2" xlink:to="loc_srt_MaximumMember_22201e02-4944-47a3-851a-cf6135094469" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_20281229-475d-4bf4-ba37-86064e724b5e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_StatementClassOfStockAxis_20281229-475d-4bf4-ba37-86064e724b5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_540053b5-50c7-46f6-aaa1-fb75b735613d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_20281229-475d-4bf4-ba37-86064e724b5e" xlink:to="loc_us-gaap_ClassOfStockDomain_540053b5-50c7-46f6-aaa1-fb75b735613d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_2b47f05e-3fb8-452e-a49f-c5c5a0f55eba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_540053b5-50c7-46f6-aaa1-fb75b735613d" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_2b47f05e-3fb8-452e-a49f-c5c5a0f55eba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_ae499d40-1fda-4016-8447-fba18992aead" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_dei_LegalEntityAxis_ae499d40-1fda-4016-8447-fba18992aead" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_9d5b3a00-4e95-40af-b741-b4c567a1f1a0" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_ae499d40-1fda-4016-8447-fba18992aead" xlink:to="loc_dei_EntityDomain_9d5b3a00-4e95-40af-b741-b4c567a1f1a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecordHoldingsPtyLimitedMember_0299c11e-4c3e-4c53-9d45-601f96afc3b7" xlink:href="tyl-20201231.xsd#tyl_RecordHoldingsPtyLimitedMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_9d5b3a00-4e95-40af-b741-b4c567a1f1a0" xlink:to="loc_tyl_RecordHoldingsPtyLimitedMember_0299c11e-4c3e-4c53-9d45-601f96afc3b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_491d3bf1-2619-46a2-8d52-16c9e1ac393e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_491d3bf1-2619-46a2-8d52-16c9e1ac393e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_f199d761-cced-441a-a3de-ec9b888de04c" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_491d3bf1-2619-46a2-8d52-16c9e1ac393e" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_f199d761-cced-441a-a3de-ec9b888de04c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BFTRLLCMember_2dd2287f-ebf3-47ec-9479-608bf81180b3" xlink:href="tyl-20201231.xsd#tyl_BFTRLLCMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_f199d761-cced-441a-a3de-ec9b888de04c" xlink:to="loc_tyl_BFTRLLCMember_2dd2287f-ebf3-47ec-9479-608bf81180b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReportingUnitAxis_a366f86d-3a6d-406f-9879-ff761c97c48d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReportingUnitAxis"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_us-gaap_ReportingUnitAxis_a366f86d-3a6d-406f-9879-ff761c97c48d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReportingUnitDomain_12ff7b00-a4f9-4b62-bf4c-b07926d445cb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReportingUnitDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReportingUnitAxis_a366f86d-3a6d-406f-9879-ff761c97c48d" xlink:to="loc_us-gaap_ReportingUnitDomain_12ff7b00-a4f9-4b62-bf4c-b07926d445cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DataAndInsightMember_10b8b7ac-bfbc-4337-a285-43cafa233a35" xlink:href="tyl-20201231.xsd#tyl_DataAndInsightMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReportingUnitDomain_12ff7b00-a4f9-4b62-bf4c-b07926d445cb" xlink:to="loc_tyl_DataAndInsightMember_10b8b7ac-bfbc-4337-a285-43cafa233a35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember_65b9ea09-bb0a-4449-823f-9e3e27c23a96" xlink:href="tyl-20201231.xsd#tyl_CaseManagementBusinessProcessManagementDataAndInsightMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReportingUnitDomain_12ff7b00-a4f9-4b62-bf4c-b07926d445cb" xlink:to="loc_tyl_CaseManagementBusinessProcessManagementDataAndInsightMember_65b9ea09-bb0a-4449-823f-9e3e27c23a96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:href="tyl-20201231.xsd#tyl_AccountingPoliciesLineItems"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_2df6459b-a77c-4451-ac64-b0163e99603e" xlink:to="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecurringRevenuePercentageOfTotalRevenue_65e5ed56-6bc4-403b-845e-c212f1b611b9" xlink:href="tyl-20201231.xsd#tyl_RecurringRevenuePercentageOfTotalRevenue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RecurringRevenuePercentageOfTotalRevenue_65e5ed56-6bc4-403b-845e-c212f1b611b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments_e6ac3d80-a53f-4884-8852-3f8c2fbc6953" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsAndShortTermInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments_e6ac3d80-a53f-4884-8852-3f8c2fbc6953" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermLineOfCredit_d73cdc8a-ac1c-4873-b5ce-ab41fc80f256" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermLineOfCredit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_LongTermLineOfCredit_d73cdc8a-ac1c-4873-b5ce-ab41fc80f256" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e31a82bf-7013-4d33-b8c8-451e7065cf81" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e31a82bf-7013-4d33-b8c8-451e7065cf81" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumberOfWhollyOwnedSubsidiaries_d2cb94df-b029-4000-ae54-c7ac7f078e21" xlink:href="tyl-20201231.xsd#tyl_NumberOfWhollyOwnedSubsidiaries"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_NumberOfWhollyOwnedSubsidiaries_d2cb94df-b029-4000-ae54-c7ac7f078e21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_b08be1be-3d2f-4dd8-874a-3fe494114a36" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_b08be1be-3d2f-4dd8-874a-3fe494114a36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_be367ca0-c678-41b5-b4ee-38e5ed96396f" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerContractTerm"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RevenueFromContractWithCustomerContractTerm_be367ca0-c678-41b5-b4ee-38e5ed96396f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_fbe5f86b-5a4e-4aaf-a0c9-81109e4a70e1" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_fbe5f86b-5a4e-4aaf-a0c9-81109e4a70e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNet_7172a7cf-bfe8-4906-a3e8-f55b54908d8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNet"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_AccountsReceivableNet_7172a7cf-bfe8-4906-a3e8-f55b54908d8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_17dc7814-153e-4fa7-bfdf-8588ecf56665" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerPaymentTerm"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_17dc7814-153e-4fa7-bfdf-8588ecf56665" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_25a9186c-8a17-4217-8204-e06aefc10793" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_25a9186c-8a17-4217-8204-e06aefc10793" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_272f096e-979d-4a39-a54a-db2c40cda9fd" xlink:href="tyl-20201231.xsd#tyl_SalesCommissionsAmortizationPeriod"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_SalesCommissionsAmortizationPeriod_272f096e-979d-4a39-a54a-db2c40cda9fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SalesCommissionRenewalPeriod_7b871b3c-2ba4-46c2-ae46-69f66f4e45fd" xlink:href="tyl-20201231.xsd#tyl_SalesCommissionRenewalPeriod"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_SalesCommissionRenewalPeriod_7b871b3c-2ba4-46c2-ae46-69f66f4e45fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_3fcb3072-5f5b-453b-9ca5-0eebb4e90dbd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_3fcb3072-5f5b-453b-9ca5-0eebb4e90dbd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_2eba848c-5e00-4bbb-a3ad-fb5f305e2a70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_2eba848c-5e00-4bbb-a3ad-fb5f305e2a70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_b10c4159-b9b4-4fcd-97a0-13abbe0f232a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_b10c4159-b9b4-4fcd-97a0-13abbe0f232a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationShareConversionRateShares_f88f5a1b-745f-4e0d-b2ab-27544dda70d2" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationShareConversionRateShares"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_ShareBasedCompensationShareConversionRateShares_f88f5a1b-745f-4e0d-b2ab-27544dda70d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_GoodwillAssessedForImpairment_b7cbb3d5-f691-479f-86fd-2f138e8a7e4f" xlink:href="tyl-20201231.xsd#tyl_GoodwillAssessedForImpairment"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_GoodwillAssessedForImpairment_b7cbb3d5-f691-479f-86fd-2f138e8a7e4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_PercentageOfTotalGoodwill_f78e1f68-6d58-4bda-a681-158caac232aa" xlink:href="tyl-20201231.xsd#tyl_PercentageOfTotalGoodwill"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_PercentageOfTotalGoodwill_f78e1f68-6d58-4bda-a681-158caac232aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_49e325c9-0830-4801-ad11-894b78c55d20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_GoodwillImpairmentLoss_49e325c9-0830-4801-ad11-894b78c55d20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_50c17201-cd53-45b7-84ec-56cc779be5b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_50c17201-cd53-45b7-84ec-56cc779be5b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_608844fd-9aa4-451a-a22a-c03b3bfd7cd0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_608844fd-9aa4-451a-a22a-c03b3bfd7cd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_632ee2df-f343-47a2-8096-32ecdf7b7810" xlink:href="tyl-20201231.xsd#tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_632ee2df-f343-47a2-8096-32ecdf7b7810" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RemainingEstimatedEconomicLife_0620e9b9-9304-4127-82c0-c710c65520ba" xlink:href="tyl-20201231.xsd#tyl_RemainingEstimatedEconomicLife"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_RemainingEstimatedEconomicLife_0620e9b9-9304-4127-82c0-c710c65520ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_57125ca9-f0db-44bb-9061-df6599609930" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_57125ca9-f0db-44bb-9061-df6599609930" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_e80e4a22-a9d5-44ed-82fe-8e3b60b2b03b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_e80e4a22-a9d5-44ed-82fe-8e3b60b2b03b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestReceivable_bbb98aa4-8a91-4f73-9ded-92db811e8dcf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestReceivable"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_InterestReceivable_bbb98aa4-8a91-4f73-9ded-92db811e8dcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_91fe49db-1f83-4688-a604-da8ea76b86a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_91fe49db-1f83-4688-a604-da8ea76b86a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CostMethodInvestmentOwnershipPercentage_2b9116ea-b290-471e-ba7d-238dfafb7e45" xlink:href="tyl-20201231.xsd#tyl_CostMethodInvestmentOwnershipPercentage"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_tyl_CostMethodInvestmentOwnershipPercentage_2b9116ea-b290-471e-ba7d-238dfafb7e45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_bd0c4795-4099-4830-ad69-6f069adbd9f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount"/>
    <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_bd0c4795-4099-4830-ad69-6f069adbd9f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5a35cf6c-3134-4855-9332-66c28a5f9685" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="31" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_4332e34b-0c2e-45e1-a73b-cf35d13ebda8" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5a35cf6c-3134-4855-9332-66c28a5f9685" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_34de6203-958f-4bb9-8114-d5644bf2579f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_201b6b3d-4587-4e86-8585-a7b60e662110" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_34de6203-958f-4bb9-8114-d5644bf2579f" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_201b6b3d-4587-4e86-8585-a7b60e662110" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_75c7783b-ec48-4aa5-88b3-2806c8d8a7c0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_201b6b3d-4587-4e86-8585-a7b60e662110" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_75c7783b-ec48-4aa5-88b3-2806c8d8a7c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_c2e42023-8ba6-475e-9da4-19b8f7732890" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_201b6b3d-4587-4e86-8585-a7b60e662110" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_c2e42023-8ba6-475e-9da4-19b8f7732890" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_385c1c89-1104-495f-bee9-d2f7bdc6b0ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_201b6b3d-4587-4e86-8585-a7b60e662110" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_385c1c89-1104-495f-bee9-d2f7bdc6b0ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_84b65df4-62fb-4b43-98d4-879bbac2c263" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_201b6b3d-4587-4e86-8585-a7b60e662110" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_84b65df4-62fb-4b43-98d4-879bbac2c263" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACQUISITIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACQUISITIONS"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ACQUISITIONS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_d6ebd1b7-ab68-4977-abed-5146ce467e02" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_2320e8c5-cc38-4498-a81a-9669c0500c6d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_d6ebd1b7-ab68-4977-abed-5146ce467e02" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_2320e8c5-cc38-4498-a81a-9669c0500c6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACQUISITIONSNarrativeDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_36e50ef2-5f7a-4281-a112-e1dc9935d1f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_b29e6524-7d84-43d7-96dc-df5091477c08" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_36e50ef2-5f7a-4281-a112-e1dc9935d1f2" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_b29e6524-7d84-43d7-96dc-df5091477c08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_6f59e55f-c4fd-4d03-8884-5201bfb268de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_b29e6524-7d84-43d7-96dc-df5091477c08" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_6f59e55f-c4fd-4d03-8884-5201bfb268de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_6f59e55f-c4fd-4d03-8884-5201bfb268de" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CourthouseTechnologiesLtdMember_eaa286dd-497d-47fe-b370-30bd248d3f2a" xlink:href="tyl-20201231.xsd#tyl_CourthouseTechnologiesLtdMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:to="loc_tyl_CourthouseTechnologiesLtdMember_eaa286dd-497d-47fe-b370-30bd248d3f2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_3d1a3898-44cb-4b6f-b862-84797309edee" xlink:href="tyl-20201231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_3d1a3898-44cb-4b6f-b862-84797309edee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CivicLLCMember_39f98c85-950b-4878-8c94-703eaa0c18b5" xlink:href="tyl-20201231.xsd#tyl_CivicLLCMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:to="loc_tyl_CivicLLCMember_39f98c85-950b-4878-8c94-703eaa0c18b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MicroPactAndMyCivicMember_d888db0c-1e8f-4945-a34b-6eb9f744e9ff" xlink:href="tyl-20201231.xsd#tyl_MicroPactAndMyCivicMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dddaeea0-b6ef-4665-a5b0-7f1d10bed17e" xlink:to="loc_tyl_MicroPactAndMyCivicMember_d888db0c-1e8f-4945-a34b-6eb9f744e9ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_b29e6524-7d84-43d7-96dc-df5091477c08" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_d01ae629-ca88-4b1c-bd4e-923bb3090f5d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_d01ae629-ca88-4b1c-bd4e-923bb3090f5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles_a7fe1527-10f6-4878-8b00-fc9b227e8ff6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles_a7fe1527-10f6-4878-8b00-fc9b227e8ff6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_10f37113-9687-4b16-9968-dbcc08b91f72" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_10f37113-9687-4b16-9968-dbcc08b91f72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3d168743-6a5d-4eee-9209-b93a6edc0f32" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3d168743-6a5d-4eee-9209-b93a6edc0f32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_5ad1d061-8ae2-4bb6-a605-b4e033adc0b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_5ad1d061-8ae2-4bb6-a605-b4e033adc0b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_b5f40cec-624f-4282-b227-1dfd98228101" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_b5f40cec-624f-4282-b227-1dfd98228101" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_7130e6b1-669a-4b5c-a404-a8b774f1ee87" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_7130e6b1-669a-4b5c-a404-a8b774f1ee87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_318f7bfc-ef87-447c-ab4a-4cb745db1526" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_d0c1cfc0-178e-49f5-b2bc-e64a808d7d6b" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_318f7bfc-ef87-447c-ab4a-4cb745db1526" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNET"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_56f71f0d-63ff-42bd-9712-9c537601877f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_58346392-57de-42ee-83cd-fe1ae93d1246" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_56f71f0d-63ff-42bd-9712-9c537601877f" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_58346392-57de-42ee-83cd-fe1ae93d1246" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_83c42680-ec4d-4def-b107-d7b309998635" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_e2be2798-7133-4f30-b347-8914f727db42" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_83c42680-ec4d-4def-b107-d7b309998635" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_e2be2798-7133-4f30-b347-8914f727db42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_14193c4e-7994-497a-9f9c-69ea46b9af2e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_14193c4e-7994-497a-9f9c-69ea46b9af2e" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e59db81a-b1fc-4998-ba75-2aeecd481daa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e59db81a-b1fc-4998-ba75-2aeecd481daa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e59db81a-b1fc-4998-ba75-2aeecd481daa" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember_1f40bfad-bb65-4493-8da8-ffb271e583be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LandMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_us-gaap_LandMember_1f40bfad-bb65-4493-8da8-ffb271e583be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BuildingAndLeaseholdImprovementsMember_c5e4ce2d-4dbd-49e8-9292-d8bd71229ce1" xlink:href="tyl-20201231.xsd#tyl_BuildingAndLeaseholdImprovementsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_tyl_BuildingAndLeaseholdImprovementsMember_c5e4ce2d-4dbd-49e8-9292-d8bd71229ce1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_fcc7ca3b-86b2-4d3e-8e7f-3f532aef0889" xlink:href="tyl-20201231.xsd#tyl_ComputerEquipmentAndPurchasedSoftwareMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_fcc7ca3b-86b2-4d3e-8e7f-3f532aef0889" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_d93eca22-1f54-4e56-a336-ac5f5b03d985" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_d93eca22-1f54-4e56-a336-ac5f5b03d985" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransportationEquipmentMember_48dfef41-8d35-45e7-892a-a2098883f0c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransportationEquipmentMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8937dda3-39f9-46e0-b6fd-dc1f9de0f140" xlink:to="loc_us-gaap_TransportationEquipmentMember_48dfef41-8d35-45e7-892a-a2098883f0c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_899e7481-f7c1-42fc-8f9c-0bb990405610" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:to="loc_srt_RangeAxis_899e7481-f7c1-42fc-8f9c-0bb990405610" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_d607eaa2-f0c2-4b27-97e0-8bde5cd344f3" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_899e7481-f7c1-42fc-8f9c-0bb990405610" xlink:to="loc_srt_RangeMember_d607eaa2-f0c2-4b27-97e0-8bde5cd344f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_dead9ca0-9a9f-4fc6-8465-04449ddc08b8" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_d607eaa2-f0c2-4b27-97e0-8bde5cd344f3" xlink:to="loc_srt_MinimumMember_dead9ca0-9a9f-4fc6-8465-04449ddc08b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_62c2a61c-ed2a-4bc1-836e-1c83e172ef08" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_d607eaa2-f0c2-4b27-97e0-8bde5cd344f3" xlink:to="loc_srt_MaximumMember_62c2a61c-ed2a-4bc1-836e-1c83e172ef08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_36684dca-6b9e-449d-a390-87147fff49fc" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_f6981343-6e35-4fac-92ca-8159c95ae34b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_f6981343-6e35-4fac-92ca-8159c95ae34b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_61709481-8463-463a-8091-be4d6e89623b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_61709481-8463-463a-8091-be4d6e89623b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_e3dcd165-0613-4323-b658-39576c8759e4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_e3dcd165-0613-4323-b658-39576c8759e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_5ac6d584-bde4-40e6-8016-1b17d6802bcf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3df11751-1939-4114-b6c9-97e149ffc5ec" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_5ac6d584-bde4-40e6-8016-1b17d6802bcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#PROPERTYANDEQUIPMENTNETAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_82b54a39-ca71-413f-890a-4b3c108cc91a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_e01e8ee0-1d4e-4b45-a238-55b9b210b18a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_82b54a39-ca71-413f-890a-4b3c108cc91a" xlink:to="loc_us-gaap_Depreciation_e01e8ee0-1d4e-4b45-a238-55b9b210b18a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements_372d6aa8-a2ef-4d27-9c24-576a31a8965d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForCapitalImprovements"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_82b54a39-ca71-413f-890a-4b3c108cc91a" xlink:to="loc_us-gaap_PaymentsForCapitalImprovements_372d6aa8-a2ef-4d27-9c24-576a31a8965d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETS"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_de3d4b72-ebda-498b-8165-9e368b563d46" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_f279b3f7-5385-4a32-b6e7-0edd0d0cc8bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_de3d4b72-ebda-498b-8165-9e368b563d46" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_f279b3f7-5385-4a32-b6e7-0edd0d0cc8bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7aa72c3d-2eef-43cc-a5c5-fd86c6feb845" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_e0f75937-8bb6-4aae-bc1d-a389a09bde5d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7aa72c3d-2eef-43cc-a5c5-fd86c6feb845" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_e0f75937-8bb6-4aae-bc1d-a389a09bde5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_686049f0-0265-4214-9c80-eb63215bd66e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7aa72c3d-2eef-43cc-a5c5-fd86c6feb845" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_686049f0-0265-4214-9c80-eb63215bd66e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_d7e466fd-e44f-4d52-b139-daab920d308c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7aa72c3d-2eef-43cc-a5c5-fd86c6feb845" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_d7e466fd-e44f-4d52-b139-daab920d308c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_c784ea3e-859a-4f4b-b26e-0bada47b13f6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7aa72c3d-2eef-43cc-a5c5-fd86c6feb845" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_c784ea3e-859a-4f4b-b26e-0bada47b13f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_4d8d66f6-0d4a-4366-9019-c2c92b380e05" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_4d8d66f6-0d4a-4366-9019-c2c92b380e05" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_6a6afd77-81fc-4d29-9bc2-da3f00177208" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_6a6afd77-81fc-4d29-9bc2-da3f00177208" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_05930b0b-f487-4bcb-96b1-fc3a6db8c879" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_6a6afd77-81fc-4d29-9bc2-da3f00177208" xlink:to="loc_us-gaap_SegmentDomain_05930b0b-f487-4bcb-96b1-fc3a6db8c879" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_0043eee8-1214-4327-846a-2f0ce90742f4" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_05930b0b-f487-4bcb-96b1-fc3a6db8c879" xlink:to="loc_tyl_EnterpriseSoftwareMember_0043eee8-1214-4327-846a-2f0ce90742f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_f4902427-4185-4c19-bc94-c9615cc8fc8b" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_05930b0b-f487-4bcb-96b1-fc3a6db8c879" xlink:to="loc_tyl_AppraisalAndTaxMember_f4902427-4185-4c19-bc94-c9615cc8fc8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_79206407-969e-4e7c-98b8-e1034abc073b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_79206407-969e-4e7c-98b8-e1034abc073b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_79206407-969e-4e7c-98b8-e1034abc073b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_424eeda8-a0d8-454b-b36e-995025ad73d9" xlink:href="tyl-20201231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_424eeda8-a0d8-454b-b36e-995025ad73d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_d3e2a766-763c-46bf-a896-712973ca5724" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:to="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_d3e2a766-763c-46bf-a896-712973ca5724" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CourthouseTechnologiesLtdMember_71e7e566-3594-47f5-9c94-38555baa1fdd" xlink:href="tyl-20201231.xsd#tyl_CourthouseTechnologiesLtdMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f014e0e8-9b05-4374-b91d-37afefb65fce" xlink:to="loc_tyl_CourthouseTechnologiesLtdMember_71e7e566-3594-47f5-9c94-38555baa1fdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_9ac64716-df57-4299-b0fc-ef88384eb933" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a1cd0dc1-977a-4e69-a5b9-89c719825ce1" xlink:to="loc_us-gaap_GoodwillLineItems_9ac64716-df57-4299-b0fc-ef88384eb933" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_9ac64716-df57-4299-b0fc-ef88384eb933" xlink:to="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_a8beec07-0f06-42ca-bf7f-6ab8334f100c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:to="loc_us-gaap_Goodwill_a8beec07-0f06-42ca-bf7f-6ab8334f100c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_0e5cb26c-8424-4c38-b9d5-9e4a1be8e05a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_0e5cb26c-8424-4c38-b9d5-9e4a1be8e05a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_20f5d78e-91ed-4877-a6fb-2acb81961e51" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_20f5d78e-91ed-4877-a6fb-2acb81961e51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_d2ec6a8e-e258-4639-b4f8-e849760c7db9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_e130f2a6-f9b8-4656-a141-a1ab51b87011" xlink:to="loc_us-gaap_Goodwill_d2ec6a8e-e258-4639-b4f8-e849760c7db9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_2f419f2b-1d05-4e09-bf3f-e3b37bbf1025" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_91f1a301-ce09-486a-aa71-8715d25b0e0b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_2f419f2b-1d05-4e09-bf3f-e3b37bbf1025" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_91f1a301-ce09-486a-aa71-8715d25b0e0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_3bf45b16-3c60-4c09-abc7-663fffad1fb0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_91f1a301-ce09-486a-aa71-8715d25b0e0b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_3bf45b16-3c60-4c09-abc7-663fffad1fb0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_3bf45b16-3c60-4c09-abc7-663fffad1fb0" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_bf58740b-a287-44d0-9260-f93278811d79" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_bf58740b-a287-44d0-9260-f93278811d79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareAcquiredMember_c0e1539d-38cf-4be2-9975-d4f6144e1c50" xlink:href="tyl-20201231.xsd#tyl_SoftwareAcquiredMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_tyl_SoftwareAcquiredMember_c0e1539d-38cf-4be2-9975-d4f6144e1c50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_3520ba38-0007-43b4-99b3-5b02691e640d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_us-gaap_TradeNamesMember_3520ba38-0007-43b4-99b3-5b02691e640d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_2c0315b5-f8ac-42b4-8e70-a63fa30db219" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareDevelopmentMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_us-gaap_SoftwareDevelopmentMember_2c0315b5-f8ac-42b4-8e70-a63fa30db219" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_007e957e-bbbd-4b28-9734-0baff57b074d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_6bd6c797-ab15-4557-a9e2-2c126cfb8157" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_007e957e-bbbd-4b28-9734-0baff57b074d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_0033152e-4390-406f-a764-45f999597150" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_91f1a301-ce09-486a-aa71-8715d25b0e0b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_0033152e-4390-406f-a764-45f999597150" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_0033152e-4390-406f-a764-45f999597150" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_0480657b-f939-4bd6-bc81-90890510db17" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_0480657b-f939-4bd6-bc81-90890510db17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f8c4d1ff-b00f-4c61-996f-16f10e7328a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f8c4d1ff-b00f-4c61-996f-16f10e7328a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_70d83af9-f3d2-493d-8fd8-bf3120d86285" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_16a42576-0d76-458a-a6c1-60f732c9a318" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_70d83af9-f3d2-493d-8fd8-bf3120d86285" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_23e501d5-5fbf-460b-937a-5bdefad4f095" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_a4bd6e57-dc23-44af-a9f9-f3a8bc9d3809" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_23e501d5-5fbf-460b-937a-5bdefad4f095" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_a4bd6e57-dc23-44af-a9f9-f3a8bc9d3809" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18242625-b7c7-4d47-962d-eacbd044a2f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_a4bd6e57-dc23-44af-a9f9-f3a8bc9d3809" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18242625-b7c7-4d47-962d-eacbd044a2f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_af2bccbe-460a-4f68-8757-7dc031231583" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18242625-b7c7-4d47-962d-eacbd044a2f3" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_af2bccbe-460a-4f68-8757-7dc031231583" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_b3673033-98f0-446d-9a40-d0ab05a348fa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_af2bccbe-460a-4f68-8757-7dc031231583" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_b3673033-98f0-446d-9a40-d0ab05a348fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_a4bd6e57-dc23-44af-a9f9-f3a8bc9d3809" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_96ca430e-dc70-417f-af95-e6a7bcaa7033" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_96ca430e-dc70-417f-af95-e6a7bcaa7033" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_f180c406-076b-4462-95cd-861ae9bbf735" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_f180c406-076b-4462-95cd-861ae9bbf735" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_00ecd05d-cc3d-4e39-8353-73077be7e28e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_00ecd05d-cc3d-4e39-8353-73077be7e28e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_d3e73dbb-0843-436c-8599-bd1cf4b5942d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_d3e73dbb-0843-436c-8599-bd1cf4b5942d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_733ca009-d52f-475f-985a-187dead1d903" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_733ca009-d52f-475f-985a-187dead1d903" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_1cd76381-f38e-41d0-8e02-a136930980c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_1cd76381-f38e-41d0-8e02-a136930980c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_73b10b9f-b4b1-4bfe-a36c-e3e385938346" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_73b10b9f-b4b1-4bfe-a36c-e3e385938346" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_d9e3878d-5d0f-447b-b573-3e9ad664a579" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_38c89a72-5bf1-44e2-8e64-4ae01b5666d6" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross_d9e3878d-5d0f-447b-b573-3e9ad664a579" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_d191630c-3e1a-476d-b4cb-e5bfdcce3410" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_7e511993-d082-45a5-99c4-e0894fecfac6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_d191630c-3e1a-476d-b4cb-e5bfdcce3410" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_7e511993-d082-45a5-99c4-e0894fecfac6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_7e511993-d082-45a5-99c4-e0894fecfac6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_fcd2cf46-07fa-4d95-ae7b-0f5a558ef9e6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_86abded6-0aab-4665-9f81-f0415e595c19" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_86abded6-0aab-4665-9f81-f0415e595c19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SoftwareAcquiredMember_03b9536f-e4f0-440b-9933-c0847ee1b2fa" xlink:href="tyl-20201231.xsd#tyl_SoftwareAcquiredMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_tyl_SoftwareAcquiredMember_03b9536f-e4f0-440b-9933-c0847ee1b2fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_4c7bff68-86c9-45d9-a0ce-7406e6dd5e7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_us-gaap_TradeNamesMember_4c7bff68-86c9-45d9-a0ce-7406e6dd5e7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_91ae1b33-0f1a-43b4-83f4-479cc884b667" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareDevelopmentMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_us-gaap_SoftwareDevelopmentMember_91ae1b33-0f1a-43b4-83f4-479cc884b667" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_39a2208f-51a6-4395-84cf-671ff0c09214" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c86111c1-d09c-45e4-a221-6819bf4d5157" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_39a2208f-51a6-4395-84cf-671ff0c09214" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_7e511993-d082-45a5-99c4-e0894fecfac6" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_6bafb2bf-7c8b-4ea3-ad8e-f6e9d489ac27" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_Goodwill_6bafb2bf-7c8b-4ea3-ad8e-f6e9d489ac27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_bf71a373-5944-4b89-bba6-7c498e848d5c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_bf71a373-5944-4b89-bba6-7c498e848d5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_bee960dd-5e41-4988-b03e-4d24466b55be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_bee960dd-5e41-4988-b03e-4d24466b55be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_472c786c-409f-4246-a0ab-d1fbcef3995d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1934d820-4a23-445f-bc5d-242452e45a61" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_472c786c-409f-4246-a0ab-d1fbcef3995d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3eea51b2-c663-44f3-a64c-f3612cd7fb35" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3eea51b2-c663-44f3-a64c-f3612cd7fb35" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_55af9943-c4d5-4171-aab4-7199291134b2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_55af9943-c4d5-4171-aab4-7199291134b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_e9f708d9-572a-4d09-93aa-7fbde4bb4104" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_e9f708d9-572a-4d09-93aa-7fbde4bb4104" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_fa1a634c-4c42-4b3b-911a-2e8470aa1c90" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_fa1a634c-4c42-4b3b-911a-2e8470aa1c90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_ed6f1b15-71ec-43e2-849d-94a4c57b2906" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_ed6f1b15-71ec-43e2-849d-94a4c57b2906" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_c765f4e9-19c0-4437-bd81-8b8b17babb34" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_c765f4e9-19c0-4437-bd81-8b8b17babb34" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_6e49de02-d7fd-4290-a2fc-0a02e76c67fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_6e49de02-d7fd-4290-a2fc-0a02e76c67fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f133583f-7d07-4b00-8518-93ef0ce4cb36" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_39c13f51-93cc-45f8-a925-4a5e8b97cd87" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f133583f-7d07-4b00-8518-93ef0ce4cb36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIES"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIES" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_9ddd511e-bba3-4f70-9ee6-990b472ad6f1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_295eacad-e63b-42b0-93f3-33ba90e7c184" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_9ddd511e-bba3-4f70-9ee6-990b472ad6f1" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_295eacad-e63b-42b0-93f3-33ba90e7c184" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIESTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIESTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_8f83eb42-248c-433b-92f2-384bbc1e8f3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_1c3345c3-ef07-4820-aa64-995160dd727c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_8f83eb42-248c-433b-92f2-384bbc1e8f3f" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_1c3345c3-ef07-4820-aa64-995160dd727c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#ACCRUEDLIABILITIESDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_808c63d3-7dfc-4829-8a2c-3598121b4be6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_3781f3db-81a4-4689-8016-42c427576b27" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_808c63d3-7dfc-4829-8a2c-3598121b4be6" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_3781f3db-81a4-4689-8016-42c427576b27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_cee19e0c-0208-4324-9739-e9191c8c31db" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_808c63d3-7dfc-4829-8a2c-3598121b4be6" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_cee19e0c-0208-4324-9739-e9191c8c31db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_871d106e-da9c-4d72-83f2-3ae3177bfcf4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_808c63d3-7dfc-4829-8a2c-3598121b4be6" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_871d106e-da9c-4d72-83f2-3ae3177bfcf4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT" xlink:type="simple" xlink:href="tyl-20201231.xsd#REVOLVINGLINEOFCREDIT"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_340a2861-8ddf-4126-98c0-dcbad2f3790b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_9c53b148-a44e-45ba-b2a8-0f19f78bac02" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_340a2861-8ddf-4126-98c0-dcbad2f3790b" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_9c53b148-a44e-45ba-b2a8-0f19f78bac02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#REVOLVINGLINEOFCREDITDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_c621a54f-6a26-4f44-bd4e-5aacd645c46d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_c621a54f-6a26-4f44-bd4e-5aacd645c46d" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_143c8e7d-2563-4f96-9291-1c793ce59933" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_ShortTermDebtTypeAxis_143c8e7d-2563-4f96-9291-1c793ce59933" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_7e0ade7a-43f6-4dbd-8971-76294512d16d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_143c8e7d-2563-4f96-9291-1c793ce59933" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_7e0ade7a-43f6-4dbd-8971-76294512d16d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_d8cb8182-c4d5-44d8-9afa-b804442bef2a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LetterOfCreditMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_7e0ade7a-43f6-4dbd-8971-76294512d16d" xlink:to="loc_us-gaap_LetterOfCreditMember_d8cb8182-c4d5-44d8-9afa-b804442bef2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_16879fcd-4748-4e33-9c71-8833b72eb8c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_CreditFacilityAxis_16879fcd-4748-4e33-9c71-8833b72eb8c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_6fea799b-4373-4cb3-a925-80c261dee557" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_16879fcd-4748-4e33-9c71-8833b72eb8c1" xlink:to="loc_us-gaap_CreditFacilityDomain_6fea799b-4373-4cb3-a925-80c261dee557" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_5f1b3beb-80bb-4f0c-a0b8-fbc0154a6b9f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_6fea799b-4373-4cb3-a925-80c261dee557" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_5f1b3beb-80bb-4f0c-a0b8-fbc0154a6b9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_9902714f-f4c8-4e76-87d0-de9c665f0ef4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_DebtInstrumentAxis_9902714f-f4c8-4e76-87d0-de9c665f0ef4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_29d0861b-beba-43eb-b896-0e502a1c3c38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_9902714f-f4c8-4e76-87d0-de9c665f0ef4" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_29d0861b-beba-43eb-b896-0e502a1c3c38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CreditAgreementMember_624fcd65-70bd-4cc5-aa8b-1f79af035271" xlink:href="tyl-20201231.xsd#tyl_CreditAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_29d0861b-beba-43eb-b896-0e502a1c3c38" xlink:to="loc_tyl_CreditAgreementMember_624fcd65-70bd-4cc5-aa8b-1f79af035271" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_312da231-3989-428d-9cdd-e368c02d3d5b" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_srt_RangeAxis_312da231-3989-428d-9cdd-e368c02d3d5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_457450d2-848c-47d2-aa11-668bd3d21886" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_312da231-3989-428d-9cdd-e368c02d3d5b" xlink:to="loc_srt_RangeMember_457450d2-848c-47d2-aa11-668bd3d21886" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_cec3b9e8-9d69-4dd7-9679-0957fa961af7" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_457450d2-848c-47d2-aa11-668bd3d21886" xlink:to="loc_srt_MinimumMember_cec3b9e8-9d69-4dd7-9679-0957fa961af7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_94c33f00-e1fb-4eca-b3fa-6c6bf6fe2529" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_457450d2-848c-47d2-aa11-668bd3d21886" xlink:to="loc_srt_MaximumMember_94c33f00-e1fb-4eca-b3fa-6c6bf6fe2529" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_4901f23d-b075-4087-984e-34b1ba96b5b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_VariableRateAxis_4901f23d-b075-4087-984e-34b1ba96b5b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_6f32a320-bb79-4c82-a455-fa3424c51081" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateAxis_4901f23d-b075-4087-984e-34b1ba96b5b9" xlink:to="loc_us-gaap_VariableRateDomain_6f32a320-bb79-4c82-a455-fa3424c51081" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrimeRateMember_268ff13c-bb7f-4b6e-b81a-aeb73314f3c9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrimeRateMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_6f32a320-bb79-4c82-a455-fa3424c51081" xlink:to="loc_us-gaap_PrimeRateMember_268ff13c-bb7f-4b6e-b81a-aeb73314f3c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_4d4612e8-0bec-40e7-b106-84962b00e3c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_6f32a320-bb79-4c82-a455-fa3424c51081" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_4d4612e8-0bec-40e7-b106-84962b00e3c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_679ba120-9eb1-45b1-9a80-12f146584ab4" xlink:to="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_d36b4b29-2501-479e-badc-2ba1ba571515" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_d36b4b29-2501-479e-badc-2ba1ba571515" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_ce20ef28-a752-479e-9752-2d6015e78ab7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_ce20ef28-a752-479e-9752-2d6015e78ab7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1ba83a31-f7d5-49d2-9c79-a77c4765bd8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1ba83a31-f7d5-49d2-9c79-a77c4765bd8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_e0d68dc6-5a27-401e-a7b9-4cf296369cab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_e0d68dc6-5a27-401e-a7b9-4cf296369cab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermLineOfCredit_4a61a5bd-f232-4137-919c-6db582e237d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermLineOfCredit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LongTermLineOfCredit_4a61a5bd-f232-4137-919c-6db582e237d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_ccd0e0d3-756d-401a-94f1-44a430a29939" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_ccd0e0d3-756d-401a-94f1-44a430a29939" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LettersOfCreditOutstandingAmount_5fa822fe-94d0-4174-ad4b-cebd3e0717ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_LettersOfCreditOutstandingAmount_5fa822fe-94d0-4174-ad4b-cebd3e0717ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet_9875f208-0d14-42f5-b693-8bfbf7e1d2de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestPaidNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_d31dfef3-8902-4c6f-bb7b-429b106ec9c7" xlink:to="loc_us-gaap_InterestPaidNet_9875f208-0d14-42f5-b693-8bfbf7e1d2de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAX" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAX"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/INCOMETAX" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_3bbeec45-8025-4119-8fd6-7babae258190" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_5b501d3b-8f14-427c-88ab-a07ed1d19b34" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_3bbeec45-8025-4119-8fd6-7babae258190" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_5b501d3b-8f14-427c-88ab-a07ed1d19b34" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/INCOMETAXTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_90b38ed9-f062-47e2-9028-1473a0332c59" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_c3406dfb-87c9-4197-86a3-bc1e63b4c298" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_90b38ed9-f062-47e2-9028-1473a0332c59" xlink:to="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_c3406dfb-87c9-4197-86a3-bc1e63b4c298" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_ca6eb2bd-56e2-485b-bbc7-19bb6cf52a9e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_90b38ed9-f062-47e2-9028-1473a0332c59" xlink:to="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_ca6eb2bd-56e2-485b-bbc7-19bb6cf52a9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_940fac2f-3d7a-4333-9c84-56a1528404ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_90b38ed9-f062-47e2-9028-1473a0332c59" xlink:to="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_940fac2f-3d7a-4333-9c84-56a1528404ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_0b7c08b7-2cf1-480f-922e-bf20cb09dbb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_814e8477-0857-4bca-b3c0-b0dfe60aeecc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0b7c08b7-2cf1-480f-922e-bf20cb09dbb2" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_814e8477-0857-4bca-b3c0-b0dfe60aeecc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_111042c1-328a-4b28-a44d-5f74adeef875" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0b7c08b7-2cf1-480f-922e-bf20cb09dbb2" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_111042c1-328a-4b28-a44d-5f74adeef875" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_158dd520-a39c-49cd-b9fd-abdda178edc3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0b7c08b7-2cf1-480f-922e-bf20cb09dbb2" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_158dd520-a39c-49cd-b9fd-abdda178edc3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_9263a243-c1aa-496c-9fa8-7113b88763e0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0b7c08b7-2cf1-480f-922e-bf20cb09dbb2" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_9263a243-c1aa-496c-9fa8-7113b88763e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_35c5e2fb-63d8-4a57-a6c9-f70bec8375a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0b7c08b7-2cf1-480f-922e-bf20cb09dbb2" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_35c5e2fb-63d8-4a57-a6c9-f70bec8375a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_766b84b3-a54a-48de-8cb9-b086557fd0f5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_766b84b3-a54a-48de-8cb9-b086557fd0f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_35c1a3c1-c470-4b15-ba03-89c02b06a66e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_35c1a3c1-c470-4b15-ba03-89c02b06a66e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NetOperatingLossCarryback_27edcb66-e75b-496c-875b-8e34fb42ce17" xlink:href="tyl-20201231.xsd#tyl_NetOperatingLossCarryback"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_tyl_NetOperatingLossCarryback_27edcb66-e75b-496c-875b-8e34fb42ce17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_1b7e1252-c61a-4d5a-86fa-e3d8a0f055f1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_1b7e1252-c61a-4d5a-86fa-e3d8a0f055f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_b8fa3898-e50d-4363-8290-0145e72d79b6" xlink:href="tyl-20201231.xsd#tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_b8fa3898-e50d-4363-8290-0145e72d79b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_1fcbd409-b048-4657-ad43-a65f4b6d0737" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCredits_1fcbd409-b048-4657-ad43-a65f4b6d0737" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_6f903f00-e6e1-4e08-9f75-ce5870d26e4a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_6f903f00-e6e1-4e08-9f75-ce5870d26e4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_5aceb280-83d5-4aab-8454-3fa3b618d34d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_5aceb280-83d5-4aab-8454-3fa3b618d34d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_1cda9363-e55d-43a5-819a-83094bebb5ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2dbc3a7e-db7d-4489-8526-40492617d608" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_1cda9363-e55d-43a5-819a-83094bebb5ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_604fbded-3c1c-4bc3-9648-d45ed3c13c65" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_d9cc807b-a2ab-450e-98d4-abd929cb923c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_604fbded-3c1c-4bc3-9648-d45ed3c13c65" xlink:to="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_d9cc807b-a2ab-450e-98d4-abd929cb923c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_9298142c-9cf7-41cf-8262-896c79d1f0bf" xlink:href="tyl-20201231.xsd#tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_d9cc807b-a2ab-450e-98d4-abd929cb923c" xlink:to="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_9298142c-9cf7-41cf-8262-896c79d1f0bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_0de49b5d-a26b-4cd4-9f46-f423c67c4450" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_d9cc807b-a2ab-450e-98d4-abd929cb923c" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_0de49b5d-a26b-4cd4-9f46-f423c67c4450" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_353d7889-b467-4ff3-bb40-e261e9c8cd1e" xlink:href="tyl-20201231.xsd#tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_d9cc807b-a2ab-450e-98d4-abd929cb923c" xlink:to="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_353d7889-b467-4ff3-bb40-e261e9c8cd1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_986f2df7-ce11-40d4-a600-a39ebeaad8f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_d9cc807b-a2ab-450e-98d4-abd929cb923c" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_986f2df7-ce11-40d4-a600-a39ebeaad8f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_05895784-86c7-4b23-bdd0-c217b40bdd17" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_d9cc807b-a2ab-450e-98d4-abd929cb923c" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_05895784-86c7-4b23-bdd0-c217b40bdd17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_e30b7a8d-1966-4119-84f2-ae4d3fbfa8f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_d9cc807b-a2ab-450e-98d4-abd929cb923c" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_e30b7a8d-1966-4119-84f2-ae4d3fbfa8f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract_664aff99-b52f-4de9-a005-b2517361e327" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_604fbded-3c1c-4bc3-9648-d45ed3c13c65" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesAbstract_664aff99-b52f-4de9-a005-b2517361e327" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_9b0a79b7-c6b7-4425-925c-37ce048a8f50" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_664aff99-b52f-4de9-a005-b2517361e327" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_9b0a79b7-c6b7-4425-925c-37ce048a8f50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_90b625bf-2417-44de-93ba-e1ab83a6e142" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_664aff99-b52f-4de9-a005-b2517361e327" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_90b625bf-2417-44de-93ba-e1ab83a6e142" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_209a93f3-ddf0-4b48-ac5a-9cc31383a964" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_664aff99-b52f-4de9-a005-b2517361e327" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_209a93f3-ddf0-4b48-ac5a-9cc31383a964" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsDeferredIncome_21787e36-f87f-4607-bc21-4a797118fdaf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsDeferredIncome"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_664aff99-b52f-4de9-a005-b2517361e327" xlink:to="loc_us-gaap_DeferredTaxAssetsDeferredIncome_21787e36-f87f-4607-bc21-4a797118fdaf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_b5c65b94-788f-4579-a373-a96423200f97" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_664aff99-b52f-4de9-a005-b2517361e327" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_b5c65b94-788f-4579-a373-a96423200f97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_5b4566bc-acd7-435c-a14a-6f2df2c0cbe4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_664aff99-b52f-4de9-a005-b2517361e327" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_5b4566bc-acd7-435c-a14a-6f2df2c0cbe4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_5dcfabfc-79af-44de-b769-c3a903074444" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_604fbded-3c1c-4bc3-9648-d45ed3c13c65" xlink:to="loc_us-gaap_DeferredTaxLiabilities_5dcfabfc-79af-44de-b769-c3a903074444" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#INCOMETAXAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_d45ccc6a-9c33-4f7b-ba76-e02da2ca2a66" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_07e3073f-eb29-41c5-b21c-403831ebdbf2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_d45ccc6a-9c33-4f7b-ba76-e02da2ca2a66" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_07e3073f-eb29-41c5-b21c-403831ebdbf2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_9d5e4bcb-b25f-469c-a7a1-f136765d17c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_07e3073f-eb29-41c5-b21c-403831ebdbf2" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_9d5e4bcb-b25f-469c-a7a1-f136765d17c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_79298f1d-d787-483c-b656-86ddc164961e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_9d5e4bcb-b25f-469c-a7a1-f136765d17c1" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_79298f1d-d787-483c-b656-86ddc164961e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_c5216db8-0ac5-42a1-8829-ef478f7b23dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DomesticCountryMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_79298f1d-d787-483c-b656-86ddc164961e" xlink:to="loc_us-gaap_DomesticCountryMember_c5216db8-0ac5-42a1-8829-ef478f7b23dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_99af80a3-dfa9-4010-a702-8acc11c9b4ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_79298f1d-d787-483c-b656-86ddc164961e" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_99af80a3-dfa9-4010-a702-8acc11c9b4ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_07e3073f-eb29-41c5-b21c-403831ebdbf2" xlink:to="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NetOperatingLossCarryback_3e07068b-3154-4335-8ccd-90db218809a6" xlink:href="tyl-20201231.xsd#tyl_NetOperatingLossCarryback"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_tyl_NetOperatingLossCarryback_3e07068b-3154-4335-8ccd-90db218809a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_76e0f7e6-1799-44a1-82a3-1241307f6aac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_OperatingLossCarryforwards_76e0f7e6-1799-44a1-82a3-1241307f6aac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount_f3de2a92-55c9-4295-a60c-c5792cf31c99" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_TaxCreditCarryforwardAmount_f3de2a92-55c9-4295-a60c-c5792cf31c99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_7ce06553-540b-434a-acec-ac33294e94d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_7ce06553-540b-434a-acec-ac33294e94d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_c92843ab-4e9e-4b3e-abca-170669ac4fd5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_ed577b65-7d51-4d23-95e1-657d370c1e48" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_c92843ab-4e9e-4b3e-abca-170669ac4fd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITY" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITY"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITY" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_2c152365-4bef-4af8-94c2-e9a93851d940" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5951e506-cdf2-4ded-bd1c-017612baffdb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_2c152365-4bef-4af8-94c2-e9a93851d940" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5951e506-cdf2-4ded-bd1c-017612baffdb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_33863199-2c14-4544-85e2-7c9c4c8de1e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_b274c38f-d9d2-417f-b02b-54c2a9c2a43b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockholdersEquityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_33863199-2c14-4544-85e2-7c9c4c8de1e6" xlink:to="loc_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_b274c38f-d9d2-417f-b02b-54c2a9c2a43b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_268c3587-7789-425c-b19a-8b501da1f39d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_268c3587-7789-425c-b19a-8b501da1f39d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_b896c252-4db4-4487-b2df-c6086ea76156" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_b896c252-4db4-4487-b2df-c6086ea76156" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_6ea91ae3-c05f-4afc-a688-fa5eb155142b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_6ea91ae3-c05f-4afc-a688-fa5eb155142b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_ff5f6928-ec68-4145-b0fe-20b359910ff7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_ff5f6928-ec68-4145-b0fe-20b359910ff7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_a1fc31c6-b037-4ce4-89ab-b2544df4c3eb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_a1fc31c6-b037-4ce4-89ab-b2544df4c3eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_af5f14e5-2600-4a25-800b-1c9b033ca0ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_af5f14e5-2600-4a25-800b-1c9b033ca0ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_163b4af6-b5dc-47c6-b540-a992cfc45123" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:to="loc_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_163b4af6-b5dc-47c6-b540-a992cfc45123" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_82f845ea-2538-4d9a-9851-aadf3061f931" xlink:href="tyl-20201231.xsd#tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_34b4e9c5-632a-4ac0-8b5d-ef372510838e" xlink:to="loc_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_82f845ea-2538-4d9a-9851-aadf3061f931" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREHOLDERSEQUITYAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_20a291ff-1358-4529-8305-e0a9d06ddf45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_680b05d2-acc4-4f7f-b9c9-4ff24a48dda2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_20a291ff-1358-4529-8305-e0a9d06ddf45" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_680b05d2-acc4-4f7f-b9c9-4ff24a48dda2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_83b27d55-05e5-486e-bbf0-9bb4cb91d034" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_680b05d2-acc4-4f7f-b9c9-4ff24a48dda2" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_83b27d55-05e5-486e-bbf0-9bb4cb91d034" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_614e3ec5-b597-4efc-8301-4aa1ae6e25ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_83b27d55-05e5-486e-bbf0-9bb4cb91d034" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_614e3ec5-b597-4efc-8301-4aa1ae6e25ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_9df51b39-4da8-4d3c-94ef-8146c5c29649" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_614e3ec5-b597-4efc-8301-4aa1ae6e25ec" xlink:to="loc_us-gaap_SubsequentEventMember_9df51b39-4da8-4d3c-94ef-8146c5c29649" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems_a57a2d97-1d69-4f22-94b2-fac6392c1d0c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_680b05d2-acc4-4f7f-b9c9-4ff24a48dda2" xlink:to="loc_us-gaap_ClassOfStockLineItems_a57a2d97-1d69-4f22-94b2-fac6392c1d0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_22a83e9c-5238-42d5-8cc9-6b41b3617af2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_a57a2d97-1d69-4f22-94b2-fac6392c1d0c" xlink:to="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_22a83e9c-5238-42d5-8cc9-6b41b3617af2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATION" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATION"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATION" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ea94fde8-93ca-4f16-89ba-289fcbe14648" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_2fd28cf4-c92d-4c61-be56-a8df50c6a352" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ea94fde8-93ca-4f16-89ba-289fcbe14648" xlink:to="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_2fd28cf4-c92d-4c61-be56-a8df50c6a352" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_61e1c56f-da0c-45e9-8156-9f349ac86ed2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_b754f838-220f-40b3-8f70-75af542e96fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_61e1c56f-da0c-45e9-8156-9f349ac86ed2" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_b754f838-220f-40b3-8f70-75af542e96fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_7dc63094-2db9-4a1f-8e34-377fc8f459d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_61e1c56f-da0c-45e9-8156-9f349ac86ed2" xlink:to="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_7dc63094-2db9-4a1f-8e34-377fc8f459d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_8244dd52-6777-49ab-9801-655bfd842dc3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_61e1c56f-da0c-45e9-8156-9f349ac86ed2" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_8244dd52-6777-49ab-9801-655bfd842dc3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_e3e1351e-a512-472c-9f33-0c052669c55e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_61e1c56f-da0c-45e9-8156-9f349ac86ed2" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_e3e1351e-a512-472c-9f33-0c052669c55e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_fbfdfbfd-89c0-4dac-86d6-a5f598f3f4cd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_fbfdfbfd-89c0-4dac-86d6-a5f598f3f4cd" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_80c240ac-ea42-4895-993d-f5044d4753e1" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:to="loc_srt_RangeAxis_80c240ac-ea42-4895-993d-f5044d4753e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_7853de88-621f-4b7d-b0c5-1e23fa0a85cc" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_80c240ac-ea42-4895-993d-f5044d4753e1" xlink:to="loc_srt_RangeMember_7853de88-621f-4b7d-b0c5-1e23fa0a85cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_8d03a166-972f-4f76-b307-48a9b0102c38" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_7853de88-621f-4b7d-b0c5-1e23fa0a85cc" xlink:to="loc_srt_MinimumMember_8d03a166-972f-4f76-b307-48a9b0102c38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_81370fbf-7cb7-47f0-9adb-2b63f3566079" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_7853de88-621f-4b7d-b0c5-1e23fa0a85cc" xlink:to="loc_srt_MaximumMember_81370fbf-7cb7-47f0-9adb-2b63f3566079" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_0a16bfa1-dccc-4965-aa5a-52a9622a6a73" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:to="loc_us-gaap_AwardTypeAxis_0a16bfa1-dccc-4965-aa5a-52a9622a6a73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_0a16bfa1-dccc-4965-aa5a-52a9622a6a73" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_68e59cf0-3a6f-4844-a284-e9ddc1fa8aa1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:to="loc_us-gaap_EmployeeStockOptionMember_68e59cf0-3a6f-4844-a284-e9ddc1fa8aa1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_580960f6-3f56-4052-a070-15e9cc1623dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_580960f6-3f56-4052-a070-15e9cc1623dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_37f0dccc-3a44-4c55-a101-efe351cee468" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_43a58d5b-0fcc-41c5-b232-e1fc64f24a63" xlink:to="loc_us-gaap_PerformanceSharesMember_37f0dccc-3a44-4c55-a101-efe351cee468" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_7f36712c-6193-4163-b4ea-17288a02e6a4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_7f36712c-6193-4163-b4ea-17288a02e6a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_720eac1d-ccda-4aaa-9bab-a9f2ca72b1b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_7f36712c-6193-4163-b4ea-17288a02e6a4" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_720eac1d-ccda-4aaa-9bab-a9f2ca72b1b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockMember_1e2c13df-5c0c-4279-af38-daf2aad84c6c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_720eac1d-ccda-4aaa-9bab-a9f2ca72b1b1" xlink:to="loc_us-gaap_EmployeeStockMember_1e2c13df-5c0c-4279-af38-daf2aad84c6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a0d6da-6006-4466-8d09-c223d70a6f69" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_ef8c8ed1-256e-49bb-8537-0908af94c73b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_ef8c8ed1-256e-49bb-8537-0908af94c73b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_be949e1f-8681-4a65-82c3-bc4bff7cc607" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_be949e1f-8681-4a65-82c3-bc4bff7cc607" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationShareConversionRateShares_ea12b8e1-54f1-4b96-9a55-32fc22b64fa6" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationShareConversionRateShares"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_tyl_ShareBasedCompensationShareConversionRateShares_ea12b8e1-54f1-4b96-9a55-32fc22b64fa6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_871bcbcc-dd01-46e7-8c31-77d22e22a5fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_871bcbcc-dd01-46e7-8c31-77d22e22a5fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_17ac1495-edc3-4e51-bc16-26bc4aa10823" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_17ac1495-edc3-4e51-bc16-26bc4aa10823" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_f62f3d9d-3e8f-4bc0-88cf-b367f9069cb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_f62f3d9d-3e8f-4bc0-88cf-b367f9069cb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_390e6e27-c59a-4aa9-9835-02306797a1f8" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_390e6e27-c59a-4aa9-9835-02306797a1f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_5d035bc9-0a08-4c3b-a093-966c60fe251c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_5d035bc9-0a08-4c3b-a093-966c60fe251c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_fe836c6f-eff2-4484-a837-000563a9782f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_fe836c6f-eff2-4484-a837-000563a9782f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_2680a2e7-6318-4a5c-8f98-92fd4f525de4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_2680a2e7-6318-4a5c-8f98-92fd4f525de4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_b630e537-c9f1-4e2a-9350-2d9f02018753" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1e8e76a6-ee76-4de7-8113-5b1b3f4e20f0" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_b630e537-c9f1-4e2a-9350-2d9f02018753" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b23d4108-bf8e-4877-ac2f-57a5bee2c56a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_807966a3-ec1c-4a57-9403-21065581f9b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b23d4108-bf8e-4877-ac2f-57a5bee2c56a" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_807966a3-ec1c-4a57-9403-21065581f9b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_ece265de-cb4e-4757-a3fe-b3a4b93571bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_807966a3-ec1c-4a57-9403-21065581f9b0" xlink:to="loc_us-gaap_AwardTypeAxis_ece265de-cb4e-4757-a3fe-b3a4b93571bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_cb99dce7-2556-48e6-9003-48b9f61d9af2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_ece265de-cb4e-4757-a3fe-b3a4b93571bf" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_cb99dce7-2556-48e6-9003-48b9f61d9af2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_3518ebb1-3b61-470d-bfc2-141b48779e6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_cb99dce7-2556-48e6-9003-48b9f61d9af2" xlink:to="loc_us-gaap_EmployeeStockOptionMember_3518ebb1-3b61-470d-bfc2-141b48779e6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_807966a3-ec1c-4a57-9403-21065581f9b0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_b2e0c280-4468-4304-9851-5611872b9df2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_b2e0c280-4468-4304-9851-5611872b9df2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_499f29d4-1e89-48ac-9264-94ae8608ced7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_499f29d4-1e89-48ac-9264-94ae8608ced7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_b256b76a-503b-4474-b730-278482fabeef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_b256b76a-503b-4474-b730-278482fabeef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_dd16ccf9-32b3-4ddc-a817-17d2d3aebc9e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_dd16ccf9-32b3-4ddc-a817-17d2d3aebc9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_293cf054-25a7-47d6-94de-e93f2e445b8a" xlink:href="tyl-20201231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_95d21a66-6d83-4536-b61f-c1b0d58e2ac5" xlink:to="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_293cf054-25a7-47d6-94de-e93f2e445b8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_de40fe34-c109-4dff-b2da-1969658b9e15" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c1dd8a34-9151-4fdd-b30d-70e71e61496a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_de40fe34-c109-4dff-b2da-1969658b9e15" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c1dd8a34-9151-4fdd-b30d-70e71e61496a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_1d79cc56-1df5-4e22-843a-9407c6ab919f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c1dd8a34-9151-4fdd-b30d-70e71e61496a" xlink:to="loc_us-gaap_AwardTypeAxis_1d79cc56-1df5-4e22-843a-9407c6ab919f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_65b436b6-8dd6-4971-8adf-79e26cbf2f40" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_1d79cc56-1df5-4e22-843a-9407c6ab919f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_65b436b6-8dd6-4971-8adf-79e26cbf2f40" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_b4bb3595-5224-4602-b929-a23a209f2d66" xlink:href="tyl-20201231.xsd#tyl_RestrictedStockUnitandPerformanceStockUnitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_65b436b6-8dd6-4971-8adf-79e26cbf2f40" xlink:to="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_b4bb3595-5224-4602-b929-a23a209f2d66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_593d2d04-d970-412e-bbd8-299e48eec006" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c1dd8a34-9151-4fdd-b30d-70e71e61496a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_593d2d04-d970-412e-bbd8-299e48eec006" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_593d2d04-d970-412e-bbd8-299e48eec006" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_0fc22bb3-9dc4-4028-a869-1d7675043d4e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_0fc22bb3-9dc4-4028-a869-1d7675043d4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_151f8f7d-26db-4a5d-93e9-d245f9a35120" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_151f8f7d-26db-4a5d-93e9-d245f9a35120" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_27280418-c63c-4b90-9543-794f32ee3b7a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_27280418-c63c-4b90-9543-794f32ee3b7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_a096878f-c9ce-4103-bf40-bf381bdced45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_a096878f-c9ce-4103-bf40-bf381bdced45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_8ae59401-4684-4a3c-b3dc-952abe18430d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_3bf7a955-2f5a-44f8-9f0b-29606e3d3120" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_8ae59401-4684-4a3c-b3dc-952abe18430d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_593d2d04-d970-412e-bbd8-299e48eec006" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_3d030c2e-2e98-4096-b9b6-526b8c56333c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_3d030c2e-2e98-4096-b9b6-526b8c56333c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_86542678-db1c-4116-b920-7f279262a258" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_86542678-db1c-4116-b920-7f279262a258" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_351fbe71-8621-4dc4-afb6-6b657b639972" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_351fbe71-8621-4dc4-afb6-6b657b639972" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_640a2ff8-0d6f-484f-a988-eae258703646" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_640a2ff8-0d6f-484f-a988-eae258703646" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_162dc429-0f8b-4bf8-bdd1-61b6c103fc4c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_02e82074-d440-4a27-81a9-c63fd4e4bde5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_162dc429-0f8b-4bf8-bdd1-61b6c103fc4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONStockOptionActivityDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_8b5cda8e-e88f-4244-8d20-f19c72706503" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_8b5cda8e-e88f-4244-8d20-f19c72706503" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_3745cd40-9321-496a-b157-0b4ebe6732d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_8b5cda8e-e88f-4244-8d20-f19c72706503" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_3745cd40-9321-496a-b157-0b4ebe6732d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_3fd66cb8-63cd-4bad-991f-0abe435e653d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_8b5cda8e-e88f-4244-8d20-f19c72706503" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_3fd66cb8-63cd-4bad-991f-0abe435e653d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_693d2400-fa26-4fe4-b9dc-b11acb7eeaa7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_8b5cda8e-e88f-4244-8d20-f19c72706503" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_693d2400-fa26-4fe4-b9dc-b11acb7eeaa7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_b5905947-f25d-4255-9dea-70eac8e81403" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_8b5cda8e-e88f-4244-8d20-f19c72706503" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_b5905947-f25d-4255-9dea-70eac8e81403" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2ac88437-d9c8-4734-955b-0b031d4fb7ee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_8b5cda8e-e88f-4244-8d20-f19c72706503" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2ac88437-d9c8-4734-955b-0b031d4fb7ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_c1463aca-a75b-4d58-9514-aca029471d9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_c1463aca-a75b-4d58-9514-aca029471d9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_8b92ac83-c62a-4576-9bca-cab18e4e805a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_8b92ac83-c62a-4576-9bca-cab18e4e805a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_24d792a5-b2a4-41fe-b4de-d2302cf13686" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_8b92ac83-c62a-4576-9bca-cab18e4e805a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_24d792a5-b2a4-41fe-b4de-d2302cf13686" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_dd5c8fae-bced-4315-9bc7-1f4e48e1acd3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_8b92ac83-c62a-4576-9bca-cab18e4e805a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_dd5c8fae-bced-4315-9bc7-1f4e48e1acd3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_2db272c4-4446-4b66-8f06-fca1494b9c51" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_8b92ac83-c62a-4576-9bca-cab18e4e805a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_2db272c4-4446-4b66-8f06-fca1494b9c51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_2b1114ee-601f-475c-805c-aff81ce2c56c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_8b92ac83-c62a-4576-9bca-cab18e4e805a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_2b1114ee-601f-475c-805c-aff81ce2c56c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_7589f9f4-dc89-45ca-9cb1-e2aef5f38916" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_8b92ac83-c62a-4576-9bca-cab18e4e805a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_7589f9f4-dc89-45ca-9cb1-e2aef5f38916" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_89d56317-d79e-4118-b093-5e129c1fd918" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_89d56317-d79e-4118-b093-5e129c1fd918" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_3dbc0404-f02e-4fdf-908b-1b40bbe1b67f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_3dbc0404-f02e-4fdf-908b-1b40bbe1b67f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_2bf500fe-6cae-4f3a-83c7-a018f25d9487" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_2bf500fe-6cae-4f3a-83c7-a018f25d9487" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_24558939-332d-4414-a85e-eb2c53cae42b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_24558939-332d-4414-a85e-eb2c53cae42b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_f3a34e19-b2df-4edf-a9e9-f09f21814672" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_b0e67759-91b8-4507-87c9-0083ab5a8f5d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_f3a34e19-b2df-4edf-a9e9-f09f21814672" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ef4d8d63-6a88-45d2-90e0-1512f9e1de70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_f0e008eb-1420-4c60-a084-4625217022f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ef4d8d63-6a88-45d2-90e0-1512f9e1de70" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_f0e008eb-1420-4c60-a084-4625217022f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_6b954d67-0b9d-44a5-831f-8b1cf9b2cefe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ef4d8d63-6a88-45d2-90e0-1512f9e1de70" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_6b954d67-0b9d-44a5-831f-8b1cf9b2cefe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ceafaa44-9079-4665-8b06-6f292ec62ef0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ae8e3a9d-65bd-4546-8888-be7f3a94acaa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ceafaa44-9079-4665-8b06-6f292ec62ef0" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ae8e3a9d-65bd-4546-8888-be7f3a94acaa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_9856be48-4582-4b24-b773-5366b793f4af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ae8e3a9d-65bd-4546-8888-be7f3a94acaa" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_9856be48-4582-4b24-b773-5366b793f4af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_eb8fe99c-7217-4288-85df-4b1c45c84607" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_9856be48-4582-4b24-b773-5366b793f4af" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_eb8fe99c-7217-4288-85df-4b1c45c84607" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember_a863e539-71fe-4556-be1a-c8882768c5ba" xlink:href="tyl-20201231.xsd#tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_eb8fe99c-7217-4288-85df-4b1c45c84607" xlink:to="loc_tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember_a863e539-71fe-4556-be1a-c8882768c5ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_c8016817-2c61-47e4-96d6-834c8271c116" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_eb8fe99c-7217-4288-85df-4b1c45c84607" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_c8016817-2c61-47e4-96d6-834c8271c116" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ae8e3a9d-65bd-4546-8888-be7f3a94acaa" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_0520c9b7-b9aa-4fb1-937d-1f00a665e27b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_0520c9b7-b9aa-4fb1-937d-1f00a665e27b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_d4d85e52-65d0-4e71-8037-417dc4af7c4b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_d4d85e52-65d0-4e71-8037-417dc4af7c4b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_a80f0136-7275-47e3-825b-d9d2ec441503" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_3fe26665-39b4-4c13-977f-f75a020ee549" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_a80f0136-7275-47e3-825b-d9d2ec441503" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHARE" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHARE"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHARE" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_2e164f60-20b1-41dc-a0fc-a3ffcc605896" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_d696e77f-94c0-47ac-96af-643a96078482" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_2e164f60-20b1-41dc-a0fc-a3ffcc605896" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_d696e77f-94c0-47ac-96af-643a96078482" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHARETables" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHARETables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHARETables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_d66edcc6-a59e-4273-9f95-aac085ad5a62" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_f61c3b6e-6bec-4421-bdd4-e237edbe9bd7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_d66edcc6-a59e-4273-9f95-aac085ad5a62" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_f61c3b6e-6bec-4421-bdd4-e237edbe9bd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_a23f992c-a231-445a-b3b8-0d36dc4c1536" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_78016630-87a0-42f6-a73e-ed7998fb5f6c" xlink:href="tyl-20201231.xsd#tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_a23f992c-a231-445a-b3b8-0d36dc4c1536" xlink:to="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_78016630-87a0-42f6-a73e-ed7998fb5f6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_6e0ccc7d-fa5c-4d7b-a91c-490fd09c32f1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_78016630-87a0-42f6-a73e-ed7998fb5f6c" xlink:to="loc_us-gaap_NetIncomeLoss_6e0ccc7d-fa5c-4d7b-a91c-490fd09c32f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_DenominatorAbstract_6d1b971c-c001-4a34-9edf-6efd4e198d79" xlink:href="tyl-20201231.xsd#tyl_DenominatorAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_a23f992c-a231-445a-b3b8-0d36dc4c1536" xlink:to="loc_tyl_DenominatorAbstract_6d1b971c-c001-4a34-9edf-6efd4e198d79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_a56bf5b3-badc-4dc1-b69e-ff0aff396e8f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_DenominatorAbstract_6d1b971c-c001-4a34-9edf-6efd4e198d79" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_a56bf5b3-badc-4dc1-b69e-ff0aff396e8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract_7eb332c1-5258-4f2a-a064-cbf91aee4bc9" xlink:href="tyl-20201231.xsd#tyl_AssumedConversionofDilutiveSecuritiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_DenominatorAbstract_6d1b971c-c001-4a34-9edf-6efd4e198d79" xlink:to="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract_7eb332c1-5258-4f2a-a064-cbf91aee4bc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_0367a83b-0df9-4e3e-8b6d-2ac8ab6a3a92" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract_7eb332c1-5258-4f2a-a064-cbf91aee4bc9" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_0367a83b-0df9-4e3e-8b6d-2ac8ab6a3a92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2774b671-051b-4e32-aec0-ba7ac7bcdb70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_a23f992c-a231-445a-b3b8-0d36dc4c1536" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2774b671-051b-4e32-aec0-ba7ac7bcdb70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_a4745cca-c3e4-4894-bb1d-689fd026e81a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_a23f992c-a231-445a-b3b8-0d36dc4c1536" xlink:to="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_a4745cca-c3e4-4894-bb1d-689fd026e81a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_d7e38d0d-7363-43fb-ab77-fdeebd306afd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_a4745cca-c3e4-4894-bb1d-689fd026e81a" xlink:to="loc_us-gaap_EarningsPerShareBasic_d7e38d0d-7363-43fb-ab77-fdeebd306afd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_48c069bc-5ced-48b9-9b55-d3c9e4eff687" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_a4745cca-c3e4-4894-bb1d-689fd026e81a" xlink:to="loc_us-gaap_EarningsPerShareDiluted_48c069bc-5ced-48b9-9b55-d3c9e4eff687" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EARNINGSPERSHAREAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EARNINGSPERSHAREAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EARNINGSPERSHAREAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_a7c24467-b1a0-41b3-a11a-833b2557dc1e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_5db6bb5d-b39b-4b01-987e-6108a2cfd656" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_a7c24467-b1a0-41b3-a11a-833b2557dc1e" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_5db6bb5d-b39b-4b01-987e-6108a2cfd656" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASES" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASES"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASES" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_4764c41f-cc33-413a-b959-2ba6ea190e14" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_928c0c6b-5387-48e9-b09d-8553ebcca587" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4764c41f-cc33-413a-b959-2ba6ea190e14" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_928c0c6b-5387-48e9-b09d-8553ebcca587" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_ceab7967-d004-41d9-ba10-07529fd9be4e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasesOfLessorDisclosureTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4764c41f-cc33-413a-b959-2ba6ea190e14" xlink:to="loc_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_ceab7967-d004-41d9-ba10-07529fd9be4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASESTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_bc2facbd-18c2-4814-8880-d0c4b709970f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_eccd63df-0de3-4eaa-a415-e51e8b054b34" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bc2facbd-18c2-4814-8880-d0c4b709970f" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_eccd63df-0de3-4eaa-a415-e51e8b054b34" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_8a3abc77-39be-4648-8dc1-0e7ecf63b304" xlink:href="tyl-20201231.xsd#tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bc2facbd-18c2-4814-8880-d0c4b709970f" xlink:to="loc_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_8a3abc77-39be-4648-8dc1-0e7ecf63b304" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_72839ada-8b96-4b4d-a6f6-9b0c8cec54eb" xlink:href="tyl-20201231.xsd#tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bc2facbd-18c2-4814-8880-d0c4b709970f" xlink:to="loc_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_72839ada-8b96-4b4d-a6f6-9b0c8cec54eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_0f91fba8-9e82-4f5c-8784-b37b6b5401db" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bc2facbd-18c2-4814-8880-d0c4b709970f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_0f91fba8-9e82-4f5c-8784-b37b6b5401db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_bbd544cf-0692-4b41-80df-6cf2e0d8d02d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLeaseIncomeTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bc2facbd-18c2-4814-8880-d0c4b709970f" xlink:to="loc_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_bbd544cf-0692-4b41-80df-6cf2e0d8d02d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASESAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_2e405d13-9f3e-479c-9c85-924a058ded3c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_8eacce19-8da7-4a36-bdf1-527dab2d0ce9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_2e405d13-9f3e-479c-9c85-924a058ded3c" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_8eacce19-8da7-4a36-bdf1-527dab2d0ce9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_8eacce19-8da7-4a36-bdf1-527dab2d0ce9" xlink:to="loc_srt_RangeAxis_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_8655cfa9-0062-4fe8-9f1d-0691a6f064ba" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_2b55a15c-5b9f-49ef-8d0f-f8ebb699ce65" xlink:to="loc_srt_RangeMember_8655cfa9-0062-4fe8-9f1d-0691a6f064ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_8473e434-a8d6-4d0b-b451-730110a4a3a5" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_8655cfa9-0062-4fe8-9f1d-0691a6f064ba" xlink:to="loc_srt_MinimumMember_8473e434-a8d6-4d0b-b451-730110a4a3a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_9307fd67-c98e-4127-9925-8e167dce828b" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_8655cfa9-0062-4fe8-9f1d-0691a6f064ba" xlink:to="loc_srt_MaximumMember_9307fd67-c98e-4127-9925-8e167dce828b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_8eacce19-8da7-4a36-bdf1-527dab2d0ce9" xlink:to="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_96b86302-c5bc-4c07-b4d3-5d7de54f2fe7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LesseeOperatingLeaseTermOfContract_96b86302-c5bc-4c07-b4d3-5d7de54f2fe7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_d5dd14e8-e610-4a74-8195-4bf422ada5eb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_d5dd14e8-e610-4a74-8195-4bf422ada5eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_9c1dc722-555a-4197-8663-b616cc555de1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LeaseCost_9c1dc722-555a-4197-8663-b616cc555de1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeaseRenewalTerm_f4b64792-5126-47ed-9ed5-9b6d92982d27" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeaseRenewalTerm"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_LessorOperatingLeaseRenewalTerm_f4b64792-5126-47ed-9ed5-9b6d92982d27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RentalIncomeNonoperating_277dafb9-e8a0-465b-8ce3-2e2b4ec6bb24" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RentalIncomeNonoperating"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_8a60317c-29dc-42b1-8a94-a88af17cc932" xlink:to="loc_us-gaap_RentalIncomeNonoperating_277dafb9-e8a0-465b-8ce3-2e2b4ec6bb24" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofleasecostDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofleasecostDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofleasecostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_e057a221-91c9-44c4-a04c-5b47d53d4cf5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_27898cf1-dbe0-4475-acf7-bbe250a35aa9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseCost"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e057a221-91c9-44c4-a04c-5b47d53d4cf5" xlink:to="loc_us-gaap_OperatingLeaseCost_27898cf1-dbe0-4475-acf7-bbe250a35aa9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_b4c8083e-e6fe-4778-b65a-b0eb04c12299" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e057a221-91c9-44c4-a04c-5b47d53d4cf5" xlink:to="loc_us-gaap_ShortTermLeaseCost_b4c8083e-e6fe-4778-b65a-b0eb04c12299" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_dbeccff0-9bfe-4a5f-87d8-f0175210c477" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableLeaseCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e057a221-91c9-44c4-a04c-5b47d53d4cf5" xlink:to="loc_us-gaap_VariableLeaseCost_dbeccff0-9bfe-4a5f-87d8-f0175210c477" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_d80192e1-3d9a-454c-a23b-bda5cc1bfac8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e057a221-91c9-44c4-a04c-5b47d53d4cf5" xlink:to="loc_us-gaap_LeaseCost_d80192e1-3d9a-454c-a23b-bda5cc1bfac8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofleasesassetsandliabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_45b79c39-02be-4533-aae1-0ee8d3a579b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_b99d8c35-d6b3-4532-b94a-4484d0b0cf14" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_45b79c39-02be-4533-aae1-0ee8d3a579b6" xlink:to="loc_us-gaap_AssetsAbstract_b99d8c35-d6b3-4532-b94a-4484d0b0cf14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_b84f4f7c-f24b-4f3f-a473-3b9d055ac889" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_b99d8c35-d6b3-4532-b94a-4484d0b0cf14" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_b84f4f7c-f24b-4f3f-a473-3b9d055ac889" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAbstract_25bc9653-522e-4847-abeb-b70192828bf2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_45b79c39-02be-4533-aae1-0ee8d3a579b6" xlink:to="loc_us-gaap_LiabilitiesAbstract_25bc9653-522e-4847-abeb-b70192828bf2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_9651c5ae-4394-4f0e-a34f-11f8c3c79cc9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_25bc9653-522e-4847-abeb-b70192828bf2" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_9651c5ae-4394-4f0e-a34f-11f8c3c79cc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_8546a30b-7a34-46d6-a72a-b79564b61642" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_25bc9653-522e-4847-abeb-b70192828bf2" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_8546a30b-7a34-46d6-a72a-b79564b61642" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_bac6e982-32a6-456a-993b-86c2b772092d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_25bc9653-522e-4847-abeb-b70192828bf2" xlink:to="loc_us-gaap_OperatingLeaseLiability_bac6e982-32a6-456a-993b-86c2b772092d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleofotherinformationrelatedtoleasesDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_4799f23e-4f48-494e-b7c4-fea6404ff89b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_12010342-3237-4f16-86a8-b0afb72e78f1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasePayments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4799f23e-4f48-494e-b7c4-fea6404ff89b" xlink:to="loc_us-gaap_OperatingLeasePayments_12010342-3237-4f16-86a8-b0afb72e78f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_5d6c51be-7a5e-40b8-87b6-6a85d728ec11" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4799f23e-4f48-494e-b7c4-fea6404ff89b" xlink:to="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_5d6c51be-7a5e-40b8-87b6-6a85d728ec11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_24af3103-f23f-4bad-a48f-d63ee0819d9b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4799f23e-4f48-494e-b7c4-fea6404ff89b" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_24af3103-f23f-4bad-a48f-d63ee0819d9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_c1087477-131d-4832-8040-740959a56b93" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4799f23e-4f48-494e-b7c4-fea6404ff89b" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_c1087477-131d-4832-8040-740959a56b93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESMaturityofleaseliabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_041efcdb-a2be-4387-9d6c-3af70292d8d7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_041efcdb-a2be-4387-9d6c-3af70292d8d7" xlink:to="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_befb0533-4ea2-49f9-8723-d3c40727fe6d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_befb0533-4ea2-49f9-8723-d3c40727fe6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_d59438fa-91cb-48b7-8378-a6e60e67d19a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_d59438fa-91cb-48b7-8378-a6e60e67d19a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_6170d593-2f5b-4e05-8ec0-a78a137c464a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_6170d593-2f5b-4e05-8ec0-a78a137c464a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_2794d680-6327-4635-a313-de8eb96a808c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_2794d680-6327-4635-a313-de8eb96a808c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_f8c145eb-fc62-4f75-8ace-533e1e52bdcf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_f8c145eb-fc62-4f75-8ace-533e1e52bdcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_bf004f46-118c-46a3-87b0-29160298f45b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_bf004f46-118c-46a3-87b0-29160298f45b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_6adba873-deb2-45c9-8fe5-5c57529138f5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_6adba873-deb2-45c9-8fe5-5c57529138f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_5fe4dccb-a882-4e67-b0d3-aad989430ac3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_5fe4dccb-a882-4e67-b0d3-aad989430ac3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_5e2e007e-778d-42b2-a10e-b8301d9d0a46" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_b6d9470a-4dd3-4d63-9ee2-2fc71f175ca7" xlink:to="loc_us-gaap_OperatingLeaseLiability_5e2e007e-778d-42b2-a10e-b8301d9d0a46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESMaturityofleaseliabilitiesDetails_1"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#LEASESScheduleoffutureminimumoperatingrentalincomeDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_566083a8-8c5a-4eb5-916b-3475b76fc4c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_566083a8-8c5a-4eb5-916b-3475b76fc4c2" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths_5a7d3ad0-296d-41fe-98d3-e6fc37aebc14" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths_5a7d3ad0-296d-41fe-98d3-e6fc37aebc14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_e6606493-ae30-4187-a44a-53e5c71de011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_e6606493-ae30-4187-a44a-53e5c71de011" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_403dd858-37f9-4ba7-9291-644731ee8ee2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_403dd858-37f9-4ba7-9291-644731ee8ee2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_bb0f3ed9-c31c-464e-be1c-78b9edd4ff8d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_bb0f3ed9-c31c-464e-be1c-78b9edd4ff8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_2e5e6e3e-02a5-4aec-b8be-d93b69b237f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_2e5e6e3e-02a5-4aec-b8be-d93b69b237f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_f4b440ff-fd4a-482d-b13f-ce842ec9e6cb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_f4b440ff-fd4a-482d-b13f-ce842ec9e6cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_bcfc48a0-41a5-42e6-b3c1-75096c492ac4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract_fcf73f27-9029-4cf4-83ea-b058ae22d0a9" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_bcfc48a0-41a5-42e6-b3c1-75096c492ac4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS" xlink:type="simple" xlink:href="tyl-20201231.xsd#EMPLOYEEBENEFITPLANS"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_79081824-0954-41aa-973d-5f40afa3acee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_67cef0bf-97ee-4d76-8466-a2ca7184bd15" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_79081824-0954-41aa-973d-5f40afa3acee" xlink:to="loc_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_67cef0bf-97ee-4d76-8466-a2ca7184bd15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#EMPLOYEEBENEFITPLANSAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_6fd6f42d-9339-455a-9d8e-210e0c6a0d16" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_c366f7f8-5de9-4b5a-b1a5-60d517b6a080" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_6fd6f42d-9339-455a-9d8e-210e0c6a0d16" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_c366f7f8-5de9-4b5a-b1a5-60d517b6a080" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_afaa01d2-bdcd-415e-ac43-e11bd468b4dc" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_c366f7f8-5de9-4b5a-b1a5-60d517b6a080" xlink:to="loc_srt_RangeAxis_afaa01d2-bdcd-415e-ac43-e11bd468b4dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_ff3bd5fb-37a9-4ec9-90c5-eee24184a131" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_afaa01d2-bdcd-415e-ac43-e11bd468b4dc" xlink:to="loc_srt_RangeMember_ff3bd5fb-37a9-4ec9-90c5-eee24184a131" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_acbb8195-01df-4485-a56b-abee947812b8" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_ff3bd5fb-37a9-4ec9-90c5-eee24184a131" xlink:to="loc_srt_MaximumMember_acbb8195-01df-4485-a56b-abee947812b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_c366f7f8-5de9-4b5a-b1a5-60d517b6a080" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_58f707c0-28ec-4439-905d-558edcc70898" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:to="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_58f707c0-28ec-4439-905d-558edcc70898" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_31913b85-1a4d-4fbe-9bef-1101c422f771" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_31913b85-1a4d-4fbe-9bef-1101c422f771" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanCostRecognized_429ab6bd-ea7b-4a52-84cb-b8b4549c5446" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_1501a6b7-c657-4382-a484-57187d40418b" xlink:to="loc_us-gaap_DefinedContributionPlanCostRecognized_429ab6bd-ea7b-4a52-84cb-b8b4549c5446" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES" xlink:type="simple" xlink:href="tyl-20201231.xsd#COMMITMENTSANDCONTINGENCIES"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_50b034b7-4994-4dcb-8eb8-dcad241c20af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_d87961cc-5b0d-48b3-b395-408432596ed2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_50b034b7-4994-4dcb-8eb8-dcad241c20af" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_d87961cc-5b0d-48b3-b395-408432596ed2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_44597380-941b-4621-92fb-590555a6e038" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_UnusualOrInfrequentItemOrBothExpenses_f9dbbc63-2099-45b4-a696-9c242a6d4c3f" xlink:href="tyl-20201231.xsd#tyl_UnusualOrInfrequentItemOrBothExpenses"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_44597380-941b-4621-92fb-590555a6e038" xlink:to="loc_tyl_UnusualOrInfrequentItemOrBothExpenses_f9dbbc63-2099-45b4-a696-9c242a6d4c3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent_844948cb-08b8-4db5-beb1-576301db8741" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedInsuranceCurrentAndNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_44597380-941b-4621-92fb-590555a6e038" xlink:to="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent_844948cb-08b8-4db5-beb1-576301db8741" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InsuranceRecoveries_bc5f4cec-cd6e-49aa-9f0f-8b7a4583aad1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InsuranceRecoveries"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_44597380-941b-4621-92fb-590555a6e038" xlink:to="loc_us-gaap_InsuranceRecoveries_bc5f4cec-cd6e-49aa-9f0f-8b7a4583aad1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_255465c8-cb68-47bf-a6ef-d415ee91f521" xlink:href="tyl-20201231.xsd#tyl_NumberOfLegalProceedingsThatHaveMaterialEffect"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_44597380-941b-4621-92fb-590555a6e038" xlink:to="loc_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_255465c8-cb68-47bf-a6ef-d415ee91f521" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATION"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_31a08add-e06c-433e-9bc8-963a9b1d57b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_abd29eb5-4271-4362-97b2-2355ff5c8c37" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_31a08add-e06c-433e-9bc8-963a9b1d57b1" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_abd29eb5-4271-4362-97b2-2355ff5c8c37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_2e308107-e5f3-4bb4-99e2-b803a997fc07" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_305afc89-3e0d-4c84-b45e-07d2fef39b73" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_2e308107-e5f3-4bb4-99e2-b803a997fc07" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_305afc89-3e0d-4c84-b45e-07d2fef39b73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_142f416e-8a35-4177-8e9d-69d33be1eeda" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_2e308107-e5f3-4bb4-99e2-b803a997fc07" xlink:to="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_142f416e-8a35-4177-8e9d-69d33be1eeda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_846c6809-5729-40e1-ac3b-362110f8ff4e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_5ecb7976-98f5-4d6f-8dd4-66d447ec9281" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_846c6809-5729-40e1-ac3b-362110f8ff4e" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_5ecb7976-98f5-4d6f-8dd4-66d447ec9281" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_5ecb7976-98f5-4d6f-8dd4-66d447ec9281" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_16422336-8663-4c02-aa89-52b7ae91a78a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3d336bd8-4e6f-4d34-a134-f25fdc7a1bf8" xlink:to="loc_us-gaap_SegmentDomain_16422336-8663-4c02-aa89-52b7ae91a78a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_7afbf5bb-68c5-475b-a885-4c0fd7030166" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_16422336-8663-4c02-aa89-52b7ae91a78a" xlink:to="loc_tyl_EnterpriseSoftwareMember_7afbf5bb-68c5-475b-a885-4c0fd7030166" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_31860fd5-deab-445f-8c4f-8940021e3e76" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_16422336-8663-4c02-aa89-52b7ae91a78a" xlink:to="loc_tyl_AppraisalAndTaxMember_31860fd5-deab-445f-8c4f-8940021e3e76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_5ecb7976-98f5-4d6f-8dd4-66d447ec9281" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NumberOfBusinessUnits_6ccd6706-bb32-4c62-bde6-8b1e6bde3d97" xlink:href="tyl-20201231.xsd#tyl_NumberOfBusinessUnits"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:to="loc_tyl_NumberOfBusinessUnits_6ccd6706-bb32-4c62-bde6-8b1e6bde3d97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_1b603c39-e2c0-4da1-be82-cb0e38732011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:to="loc_us-gaap_NumberOfReportableSegments_1b603c39-e2c0-4da1-be82-cb0e38732011" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements_af96c52b-4efe-4918-a666-244556097281" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForCapitalImprovements"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2439c274-a96f-4b86-8716-6db38453a7c8" xlink:to="loc_us-gaap_PaymentsForCapitalImprovements_af96c52b-4efe-4918-a666-244556097281" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_2925cbf0-2f3a-49e8-bc05-06d013bf02dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_2925cbf0-2f3a-49e8-bc05-06d013bf02dc" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_dea02749-ec83-469e-a9d7-9037362b332e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:to="loc_srt_ProductOrServiceAxis_dea02749-ec83-469e-a9d7-9037362b332e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_dea02749-ec83-469e-a9d7-9037362b332e" xlink:to="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LicenseMember_ecefedea-4e60-48ec-9a12-bc44a3d68816" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LicenseMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_us-gaap_LicenseMember_ecefedea-4e60-48ec-9a12-bc44a3d68816" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_79797b3e-894c-46ca-9dbc-2bbabcb905e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubscriptionAndCirculationMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_79797b3e-894c-46ca-9dbc-2bbabcb905e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyServiceMember_31763dc3-c32a-4f94-af12-ea0daca58b8e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TechnologyServiceMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_us-gaap_TechnologyServiceMember_31763dc3-c32a-4f94-af12-ea0daca58b8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaintenanceMember_6f6beed3-abf4-4fef-ac2d-3bf6f91ec8a0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MaintenanceMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_us-gaap_MaintenanceMember_6f6beed3-abf4-4fef-ac2d-3bf6f91ec8a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember_b622109f-2de6-497d-b0c9-7fe293fcd7ad" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_tyl_AppraisalServicesMember_b622109f-2de6-497d-b0c9-7fe293fcd7ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_HardwareandOtherMember_ee94be9b-6827-4c96-9841-24a7a1982949" xlink:href="tyl-20201231.xsd#tyl_HardwareandOtherMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_423d54a3-f1c5-429b-9dea-695ba7e51e0b" xlink:to="loc_tyl_HardwareandOtherMember_ee94be9b-6827-4c96-9841-24a7a1982949" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_2ad76a4b-7cfa-4378-968b-761c446e0f6d" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:to="loc_srt_ConsolidationItemsAxis_2ad76a4b-7cfa-4378-968b-761c446e0f6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_2ad76a4b-7cfa-4378-968b-761c446e0f6d" xlink:to="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntersegmentEliminationMember_5fbfdb2e-18ea-48a4-8e88-50a69c0b099f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntersegmentEliminationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:to="loc_us-gaap_IntersegmentEliminationMember_5fbfdb2e-18ea-48a4-8e88-50a69c0b099f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_9680735f-55c5-4e2f-add1-77037e5ccee6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:to="loc_us-gaap_OperatingSegmentsMember_9680735f-55c5-4e2f-add1-77037e5ccee6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_6faddefe-5658-46f5-815c-1769e853e88a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:to="loc_us-gaap_CorporateNonSegmentMember_6faddefe-5658-46f5-815c-1769e853e88a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_cb249ea7-61a4-4859-b5f7-85b901517c00" xlink:href="tyl-20201231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_dc5bcf3e-d6ee-44a7-9e99-a4adaf5fed3d" xlink:to="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_cb249ea7-61a4-4859-b5f7-85b901517c00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_a0f80569-b125-4c58-8836-d6c52790328c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_a0f80569-b125-4c58-8836-d6c52790328c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_d93e2e22-5e6a-4e26-b8c3-6b3ace51dfa6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_a0f80569-b125-4c58-8836-d6c52790328c" xlink:to="loc_us-gaap_SegmentDomain_d93e2e22-5e6a-4e26-b8c3-6b3ace51dfa6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_3598c0e5-5c6f-4f7c-adef-3592eb57d00a" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_d93e2e22-5e6a-4e26-b8c3-6b3ace51dfa6" xlink:to="loc_tyl_EnterpriseSoftwareMember_3598c0e5-5c6f-4f7c-adef-3592eb57d00a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_d857fd6d-1519-4fb1-b19c-fd1fb767ad31" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_d93e2e22-5e6a-4e26-b8c3-6b3ace51dfa6" xlink:to="loc_tyl_AppraisalAndTaxMember_d857fd6d-1519-4fb1-b19c-fd1fb767ad31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_6ce86ed3-313d-461c-bfce-40c110a8fac2" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_5bb2ca5b-8a62-4428-9ba7-196115250366" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_5bb2ca5b-8a62-4428-9ba7-196115250366" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_cb13a9df-ee21-47d4-bd01-bc99121be16c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_cb13a9df-ee21-47d4-bd01-bc99121be16c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_d66fddda-d856-4834-a1b2-d1dbff49dcc2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_OperatingIncomeLoss_d66fddda-d856-4834-a1b2-d1dbff49dcc2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SegmentReportingInformationCapitalExpenditures_4d38d62a-6cb3-48bb-9e82-51c5b6741dd3" xlink:href="tyl-20201231.xsd#tyl_SegmentReportingInformationCapitalExpenditures"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_tyl_SegmentReportingInformationCapitalExpenditures_4d38d62a-6cb3-48bb-9e82-51c5b6741dd3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_8fc79910-72fe-4794-b11c-25da16556330" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_2d71f404-634f-4f0e-9789-3ace7d52bf6d" xlink:to="loc_us-gaap_Assets_8fc79910-72fe-4794-b11c-25da16556330" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_c25ee8b6-aba4-4c74-af08-14e39507a9c4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_c25ee8b6-aba4-4c74-af08-14e39507a9c4" xlink:to="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_63c07889-9ab5-4bb0-9677-6b39628b4ecd" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:to="loc_srt_ConsolidationItemsAxis_63c07889-9ab5-4bb0-9677-6b39628b4ecd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_090d24d7-bd5e-4be1-a44a-09c8bff0e14f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_63c07889-9ab5-4bb0-9677-6b39628b4ecd" xlink:to="loc_srt_ConsolidationItemsDomain_090d24d7-bd5e-4be1-a44a-09c8bff0e14f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_cd48271d-9047-4c7b-96ba-a21fc784fa9c" xlink:href="tyl-20201231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_090d24d7-bd5e-4be1-a44a-09c8bff0e14f" xlink:to="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_cd48271d-9047-4c7b-96ba-a21fc784fa9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_b288592d-892e-4b6c-9bbc-74cc07b74ed3" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:to="loc_srt_ProductOrServiceAxis_b288592d-892e-4b6c-9bbc-74cc07b74ed3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_a0215232-e9b1-4ae5-a8a7-40f5346246ce" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_b288592d-892e-4b6c-9bbc-74cc07b74ed3" xlink:to="loc_srt_ProductsAndServicesDomain_a0215232-e9b1-4ae5-a8a7-40f5346246ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AcquiredSoftwareMember_8aacce2d-898e-4e2c-80e4-534b3d37d3a2" xlink:href="tyl-20201231.xsd#tyl_AcquiredSoftwareMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_a0215232-e9b1-4ae5-a8a7-40f5346246ce" xlink:to="loc_tyl_AcquiredSoftwareMember_8aacce2d-898e-4e2c-80e4-534b3d37d3a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_65f32ff9-5581-4a18-918c-d773b6aa1009" xlink:to="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_1e8de37f-ab07-440f-8ef1-114d6a52b325" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_OperatingIncomeLoss_1e8de37f-ab07-440f-8ef1-114d6a52b325" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_7af23bcd-b472-49b5-8c24-d313f1caad1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_7af23bcd-b472-49b5-8c24-d313f1caad1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_f14ab032-89b4-4f98-8914-d452e36e4a34" xlink:href="tyl-20201231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_f14ab032-89b4-4f98-8914-d452e36e4a34" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_fd04cb91-77d6-4b66-a5a7-68defa1da50a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_fd04cb91-77d6-4b66-a5a7-68defa1da50a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d0d9757f-bddb-4e91-bf5b-e8b0ef973af0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_cc0731d3-2d2a-4e4d-b898-1d1fa2551913" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d0d9757f-bddb-4e91-bf5b-e8b0ef973af0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUE"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_8757de94-b358-4307-85d2-2bff30e656a4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_a7464079-29f7-40f8-88ff-2d38bd19c08a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_8757de94-b358-4307-85d2-2bff30e656a4" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_a7464079-29f7-40f8-88ff-2d38bd19c08a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUETables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_95b5d4d5-7ea2-4888-ba43-2c8143fa47d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_0f951ba9-c654-4ef6-b586-7f37b1459f85" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_95b5d4d5-7ea2-4888-ba43-2c8143fa47d6" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_0f951ba9-c654-4ef6-b586-7f37b1459f85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUEDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_8250c544-bf24-4d69-9dbc-a61acd637563" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_8250c544-bf24-4d69-9dbc-a61acd637563" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_32efe532-dd83-4fe1-8817-bcf77addec30" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_srt_ProductOrServiceAxis_32efe532-dd83-4fe1-8817-bcf77addec30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_32efe532-dd83-4fe1-8817-bcf77addec30" xlink:to="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LicenseMember_e3443450-2038-41af-87ea-07fed79cc37f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LicenseMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_LicenseMember_e3443450-2038-41af-87ea-07fed79cc37f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_74701904-5848-4d8a-b844-324754643c22" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubscriptionAndCirculationMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_74701904-5848-4d8a-b844-324754643c22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TechnologyServiceMember_f0e37ae4-93c1-43d1-ab4c-039439eb14b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TechnologyServiceMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_TechnologyServiceMember_f0e37ae4-93c1-43d1-ab4c-039439eb14b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaintenanceMember_06c92fe6-8eda-44ca-b677-34dae543e47f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MaintenanceMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_MaintenanceMember_06c92fe6-8eda-44ca-b677-34dae543e47f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalServicesMember_fb5d7fab-9af2-4979-9faf-dc94a56167d3" xlink:href="tyl-20201231.xsd#tyl_AppraisalServicesMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_tyl_AppraisalServicesMember_fb5d7fab-9af2-4979-9faf-dc94a56167d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductMember_81e1bbf1-6d1a-4d25-af28-bbe1d830ea33" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_78ef6e9e-ceca-4c7e-8f0c-f26386ae7770" xlink:to="loc_us-gaap_ProductMember_81e1bbf1-6d1a-4d25-af28-bbe1d830ea33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_56ad6348-353a-4d69-8480-f1aa717efd92" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_56ad6348-353a-4d69-8480-f1aa717efd92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_5c39997a-5dac-41fe-91a8-c8b962122214" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_56ad6348-353a-4d69-8480-f1aa717efd92" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_5c39997a-5dac-41fe-91a8-c8b962122214" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_aaa2cf0b-cd82-4665-898d-d862bf3883b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_5c39997a-5dac-41fe-91a8-c8b962122214" xlink:to="loc_us-gaap_TransferredAtPointInTimeMember_aaa2cf0b-cd82-4665-898d-d862bf3883b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember_b86d1b1b-26c8-481a-a925-6cb04c2a3a38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_5c39997a-5dac-41fe-91a8-c8b962122214" xlink:to="loc_us-gaap_TransferredOverTimeMember_b86d1b1b-26c8-481a-a925-6cb04c2a3a38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_8f5d8cd8-d328-42f0-82c9-8928063e2d75" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_srt_MajorCustomersAxis_8f5d8cd8-d328-42f0-82c9-8928063e2d75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_e5f8ea4d-a59d-4de7-8bde-2fc4e234be7e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_8f5d8cd8-d328-42f0-82c9-8928063e2d75" xlink:to="loc_srt_NameOfMajorCustomerDomain_e5f8ea4d-a59d-4de7-8bde-2fc4e234be7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RecurringRevenueMember_3c7e5b3d-b9bd-42c3-8090-b780c7f7549e" xlink:href="tyl-20201231.xsd#tyl_RecurringRevenueMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_e5f8ea4d-a59d-4de7-8bde-2fc4e234be7e" xlink:to="loc_tyl_RecurringRevenueMember_3c7e5b3d-b9bd-42c3-8090-b780c7f7549e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NonrecurringRevenueMember_527aa97e-50fd-442f-88b9-2b3ba1747d0f" xlink:href="tyl-20201231.xsd#tyl_NonrecurringRevenueMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_e5f8ea4d-a59d-4de7-8bde-2fc4e234be7e" xlink:to="loc_tyl_NonrecurringRevenueMember_527aa97e-50fd-442f-88b9-2b3ba1747d0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_0c13c782-a3b4-405c-9ae8-dcbc897c301c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_0c13c782-a3b4-405c-9ae8-dcbc897c301c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_c66cd50b-b175-4449-b0b7-0a7f0f70e869" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0c13c782-a3b4-405c-9ae8-dcbc897c301c" xlink:to="loc_us-gaap_SegmentDomain_c66cd50b-b175-4449-b0b7-0a7f0f70e869" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_fa279853-b7ef-4781-a996-d93eb7e78d07" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_c66cd50b-b175-4449-b0b7-0a7f0f70e869" xlink:to="loc_tyl_EnterpriseSoftwareMember_fa279853-b7ef-4781-a996-d93eb7e78d07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_c0648287-ec72-410e-bb80-21b1fd4f4b8d" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_c66cd50b-b175-4449-b0b7-0a7f0f70e869" xlink:to="loc_tyl_AppraisalAndTaxMember_c0648287-ec72-410e-bb80-21b1fd4f4b8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_88d3d762-aa72-41f6-ac5e-ef074311935e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_srt_ConsolidationItemsAxis_88d3d762-aa72-41f6-ac5e-ef074311935e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_88d3d762-aa72-41f6-ac5e-ef074311935e" xlink:to="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntersegmentEliminationMember_1815fb5d-9fd1-4bed-aa1b-3abdc10b2ae6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntersegmentEliminationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:to="loc_us-gaap_IntersegmentEliminationMember_1815fb5d-9fd1-4bed-aa1b-3abdc10b2ae6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_f95b13d2-deea-4562-a9d9-348566377706" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:to="loc_us-gaap_OperatingSegmentsMember_f95b13d2-deea-4562-a9d9-348566377706" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_be8ba76c-6e09-4f52-bdef-bab3ede0b8ed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:to="loc_us-gaap_CorporateNonSegmentMember_be8ba76c-6e09-4f52-bdef-bab3ede0b8ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_CorporateAndEliminationsMember_fb6a6cd4-c1b5-4740-9fc6-59a02d449d02" xlink:href="tyl-20201231.xsd#tyl_CorporateAndEliminationsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_df73588a-a5d5-4911-970c-c6bd5dddd77f" xlink:to="loc_tyl_CorporateAndEliminationsMember_fb6a6cd4-c1b5-4740-9fc6-59a02d449d02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_65fab723-10cb-48de-b5a6-eebbb75bd452" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_01a7761f-6ef8-49bd-80c1-c1330684ecf6" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_65fab723-10cb-48de-b5a6-eebbb75bd452" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c9fdae11-6b2e-4069-a546-be9783bb949c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_65fab723-10cb-48de-b5a6-eebbb75bd452" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c9fdae11-6b2e-4069-a546-be9783bb949c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DISAGGREGATIONOFREVENUEAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_56ee4c00-357a-47ba-a77c-1b802afdf12c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_dc2a2152-8b47-4166-9be9-522b78ea5c9f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_56ee4c00-357a-47ba-a77c-1b802afdf12c" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_dc2a2152-8b47-4166-9be9-522b78ea5c9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_81afe11a-abfd-4791-828a-80620772bbc8" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_dc2a2152-8b47-4166-9be9-522b78ea5c9f" xlink:to="loc_srt_RangeAxis_81afe11a-abfd-4791-828a-80620772bbc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_8b900f50-afe7-49d0-acaa-5e21e54fffeb" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_81afe11a-abfd-4791-828a-80620772bbc8" xlink:to="loc_srt_RangeMember_8b900f50-afe7-49d0-acaa-5e21e54fffeb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_fa9e19a0-3813-4c99-8bb4-893c5fb4bb2c" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_8b900f50-afe7-49d0-acaa-5e21e54fffeb" xlink:to="loc_srt_MinimumMember_fa9e19a0-3813-4c99-8bb4-893c5fb4bb2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_4db0dd85-5d66-41cf-899f-0056f495554d" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_8b900f50-afe7-49d0-acaa-5e21e54fffeb" xlink:to="loc_srt_MaximumMember_4db0dd85-5d66-41cf-899f-0056f495554d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_ceca9cdf-07c7-4f31-ac7b-c14f0131d146" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_dc2a2152-8b47-4166-9be9-522b78ea5c9f" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_ceca9cdf-07c7-4f31-ac7b-c14f0131d146" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_1821d1f6-e45e-4df6-bae4-785f7b2ef643" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerContractTerm"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_ceca9cdf-07c7-4f31-ac7b-c14f0131d146" xlink:to="loc_tyl_RevenueFromContractWithCustomerContractTerm_1821d1f6-e45e-4df6-bae4-785f7b2ef643" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_38536f3c-ce36-483b-ac56-97bbb7bd91ef" xlink:href="tyl-20201231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_ceca9cdf-07c7-4f31-ac7b-c14f0131d146" xlink:to="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_38536f3c-ce36-483b-ac56-97bbb7bd91ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_fb5b04c8-254c-4a99-9f62-94b5b1fea3e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_802bde2a-12a0-4f03-8e08-7956c0e9be3d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_fb5b04c8-254c-4a99-9f62-94b5b1fea3e8" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_802bde2a-12a0-4f03-8e08-7956c0e9be3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_ef98c13e-1c1e-4014-9ec8-bb1be78cd1d7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_61abfb0a-4a18-42c3-92a1-5cf1fd5ac14b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_ef98c13e-1c1e-4014-9ec8-bb1be78cd1d7" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_61abfb0a-4a18-42c3-92a1-5cf1fd5ac14b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_e1af9299-65d4-4d16-99ee-1f0ad0557bbe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_e1af9299-65d4-4d16-99ee-1f0ad0557bbe" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_3dd9f37d-6c91-4153-8c25-504b8eafd460" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:to="loc_srt_ConsolidationItemsAxis_3dd9f37d-6c91-4153-8c25-504b8eafd460" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_3d2daba5-b85f-4ad9-869b-779078dd9d2d" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_3dd9f37d-6c91-4153-8c25-504b8eafd460" xlink:to="loc_srt_ConsolidationItemsDomain_3d2daba5-b85f-4ad9-869b-779078dd9d2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_c006544b-07fe-48d1-8a58-29e4bcba7c71" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_3d2daba5-b85f-4ad9-869b-779078dd9d2d" xlink:to="loc_us-gaap_OperatingSegmentsMember_c006544b-07fe-48d1-8a58-29e4bcba7c71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_69ba3170-78a1-4eec-95d6-aee0220c0b3a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_3d2daba5-b85f-4ad9-869b-779078dd9d2d" xlink:to="loc_us-gaap_CorporateNonSegmentMember_69ba3170-78a1-4eec-95d6-aee0220c0b3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_f976e07e-13f9-4f42-8011-3fe46c9e8258" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_f976e07e-13f9-4f42-8011-3fe46c9e8258" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_b41393c6-2480-40ee-8467-5c25d3bd0126" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_f976e07e-13f9-4f42-8011-3fe46c9e8258" xlink:to="loc_us-gaap_SegmentDomain_b41393c6-2480-40ee-8467-5c25d3bd0126" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_EnterpriseSoftwareMember_d8e99059-cdab-4c97-8e77-306cf138509f" xlink:href="tyl-20201231.xsd#tyl_EnterpriseSoftwareMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_b41393c6-2480-40ee-8467-5c25d3bd0126" xlink:to="loc_tyl_EnterpriseSoftwareMember_d8e99059-cdab-4c97-8e77-306cf138509f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_AppraisalAndTaxMember_93177fcc-6115-4c81-9d28-4f3748947149" xlink:href="tyl-20201231.xsd#tyl_AppraisalAndTaxMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_b41393c6-2480-40ee-8467-5c25d3bd0126" xlink:to="loc_tyl_AppraisalAndTaxMember_93177fcc-6115-4c81-9d28-4f3748947149" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_9f3f2f5c-1af5-48ff-af99-22873616fbd3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2c6a8132-3041-4b74-b470-f8e6abae4da0" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_9f3f2f5c-1af5-48ff-af99-22873616fbd3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_090b109b-22bc-48b3-b22d-0d56751dffcf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_9f3f2f5c-1af5-48ff-af99-22873616fbd3" xlink:to="loc_us-gaap_ContractWithCustomerLiability_090b109b-22bc-48b3-b22d-0d56751dffcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_9f3f2f5c-1af5-48ff-af99-22873616fbd3" xlink:to="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_204131da-cecc-452b-aa07-0cccab0039b8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:to="loc_us-gaap_ContractWithCustomerLiability_204131da-cecc-452b-aa07-0cccab0039b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_504cc788-9366-424e-8bb7-7b2f4b1d9ad1" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityIncreaseFromDeferral"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:to="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_504cc788-9366-424e-8bb7-7b2f4b1d9ad1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized_6a505da4-44ee-4abe-b089-e47e2dc26cba" xlink:href="tyl-20201231.xsd#tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:to="loc_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized_6a505da4-44ee-4abe-b089-e47e2dc26cba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_64001e3b-3e59-4258-86a9-e42ce7c6988c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_93ace281-1509-419f-b49c-b77e242f9192" xlink:to="loc_us-gaap_ContractWithCustomerLiability_64001e3b-3e59-4258-86a9-e42ce7c6988c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_03de1b8a-3d59-49a7-94a6-0c318c384f42" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligation_6d46b5aa-b6ef-4bf6-9ef2-841b85bb3ae3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_03de1b8a-3d59-49a7-94a6-0c318c384f42" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligation_6d46b5aa-b6ef-4bf6-9ef2-841b85bb3ae3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_03de1b8a-3d59-49a7-94a6-0c318c384f42" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_da021481-16c5-4f0e-a401-ff99c5c883a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_da021481-16c5-4f0e-a401-ff99c5c883a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_7785b284-def1-46c9-ad46-ea8346b0bfdc" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_941ed9cd-2faa-49b4-b6ba-45332d7cfd82" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_941ed9cd-2faa-49b4-b6ba-45332d7cfd82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_fb431553-57f9-40ca-9ba2-238b4b4cff1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_dfb5ef0d-56af-42d9-9803-3cc2625e7b00" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_fb431553-57f9-40ca-9ba2-238b4b4cff1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDCOMMISSIONS" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDCOMMISSIONS"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DEFERREDCOMMISSIONS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_bb464233-3501-4486-b765-969b8bac9463" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_40b57ec3-9a4f-4ad6-87e2-26d5c88d9613" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_bb464233-3501-4486-b765-969b8bac9463" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_40b57ec3-9a4f-4ad6-87e2-26d5c88d9613" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#DEFERREDCOMMISSIONSDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_49b5c711-cb3c-43d8-9b06-4f77faab80d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostTable_c1843775-c277-40af-b4c9-374b989a38d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_49b5c711-cb3c-43d8-9b06-4f77faab80d9" xlink:to="loc_us-gaap_CapitalizedContractCostTable_c1843775-c277-40af-b4c9-374b989a38d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_c1843775-c277-40af-b4c9-374b989a38d1" xlink:to="loc_srt_RangeAxis_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_ba58011c-ee25-488a-9f32-20b95a92e5a0" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_d4f4d5ff-ae7a-4661-8e30-ae1e98ffe3a5" xlink:to="loc_srt_RangeMember_ba58011c-ee25-488a-9f32-20b95a92e5a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_2813fd50-ef1a-41d1-b7cc-5990053caca5" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_ba58011c-ee25-488a-9f32-20b95a92e5a0" xlink:to="loc_srt_MinimumMember_2813fd50-ef1a-41d1-b7cc-5990053caca5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_5bdb7362-df73-4cdc-853d-68f5e64f9ed1" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_ba58011c-ee25-488a-9f32-20b95a92e5a0" xlink:to="loc_srt_MaximumMember_5bdb7362-df73-4cdc-853d-68f5e64f9ed1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_c1843775-c277-40af-b4c9-374b989a38d1" xlink:to="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_1cc3ba17-9b79-49eb-9f78-401907238c51" xlink:href="tyl-20201231.xsd#tyl_SalesCommissionsAmortizationPeriod"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:to="loc_tyl_SalesCommissionsAmortizationPeriod_1cc3ba17-9b79-49eb-9f78-401907238c51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostNet_5afffcf0-99a4-4df4-8342-a0db62c364d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:to="loc_us-gaap_CapitalizedContractCostNet_5afffcf0-99a4-4df4-8342-a0db62c364d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostAmortization_00d73bd1-855c-44c8-b87d-add853de1989" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CapitalizedContractCostAmortization"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_e79195bf-bded-4d9a-90ad-ddadad494cbc" xlink:to="loc_us-gaap_CapitalizedContractCostAmortization_00d73bd1-855c-44c8-b87d-add853de1989" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUBSEQUENTEVENTS" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUBSEQUENTEVENTS"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SUBSEQUENTEVENTS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_4468e700-302a-46ff-a0ce-3de04080b9d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_ed5c70a5-ebc7-4046-a939-7d4b8ecaa7bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_4468e700-302a-46ff-a0ce-3de04080b9d9" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_ed5c70a5-ebc7-4046-a939-7d4b8ecaa7bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails" xlink:type="simple" xlink:href="tyl-20201231.xsd#SUBSEQUENTEVENTSDetails"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_ff605dcf-9579-44ed-8067-def96cadeb15" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_ff605dcf-9579-44ed-8067-def96cadeb15" xlink:to="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_1d929b8c-f458-4e4e-a08f-5b5bb5cef114" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_1d929b8c-f458-4e4e-a08f-5b5bb5cef114" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_cf42edc4-d1cd-4b55-8120-7820b2f879e2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1d929b8c-f458-4e4e-a08f-5b5bb5cef114" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_cf42edc4-d1cd-4b55-8120-7820b2f879e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_02ed1d64-050d-4835-9b14-5b62cc0c5110" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_cf42edc4-d1cd-4b55-8120-7820b2f879e2" xlink:to="loc_us-gaap_SubsequentEventMember_02ed1d64-050d-4835-9b14-5b62cc0c5110" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_a5d4de1b-0a70-46a2-9df1-629b69076fb9" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_dei_LegalEntityAxis_a5d4de1b-0a70-46a2-9df1-629b69076fb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_52fa6ebd-8c68-42a0-9986-ca7f5de649d1" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_a5d4de1b-0a70-46a2-9df1-629b69076fb9" xlink:to="loc_dei_EntityDomain_52fa6ebd-8c68-42a0-9986-ca7f5de649d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_NICIncMember_7e851228-bf13-4477-816a-13ed089d37aa" xlink:href="tyl-20201231.xsd#tyl_NICIncMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_52fa6ebd-8c68-42a0-9986-ca7f5de649d1" xlink:to="loc_tyl_NICIncMember_7e851228-bf13-4477-816a-13ed089d37aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1028deba-b78d-42a4-b158-189f4c9787b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1028deba-b78d-42a4-b158-189f4c9787b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_58bb6bc7-f325-42af-aa45-fb8c5f91411f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1028deba-b78d-42a4-b158-189f4c9787b4" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_58bb6bc7-f325-42af-aa45-fb8c5f91411f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_MergerSubMember_92f8292b-c74a-4d92-a6ea-d1ab17f71c2f" xlink:href="tyl-20201231.xsd#tyl_MergerSubMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_58bb6bc7-f325-42af-aa45-fb8c5f91411f" xlink:to="loc_tyl_MergerSubMember_92f8292b-c74a-4d92-a6ea-d1ab17f71c2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis_80a662c6-ba0f-4229-a7fe-3960f33bf1f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_LineOfCreditFacilityAxis_80a662c6-ba0f-4229-a7fe-3960f33bf1f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_6b710bf2-08fe-4026-86ef-615180495f54" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLenderDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_80a662c6-ba0f-4229-a7fe-3960f33bf1f4" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_6b710bf2-08fe-4026-86ef-615180495f54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_GoldmanSachsBankUSAMember_15900cc9-9f56-4f0c-b4fa-8e176b5f23d7" xlink:href="tyl-20201231.xsd#tyl_GoldmanSachsBankUSAMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain_6b710bf2-08fe-4026-86ef-615180495f54" xlink:to="loc_tyl_GoldmanSachsBankUSAMember_15900cc9-9f56-4f0c-b4fa-8e176b5f23d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_27efe459-8c8f-4c79-a330-d439b439ecd5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_CreditFacilityAxis_27efe459-8c8f-4c79-a330-d439b439ecd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_69169372-430e-4101-8350-64dad200c1de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_27efe459-8c8f-4c79-a330-d439b439ecd5" xlink:to="loc_us-gaap_CreditFacilityDomain_69169372-430e-4101-8350-64dad200c1de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_SeniorUnsecuredBridgeLoanFacilityMember_1b77e52f-5cb7-4856-af5d-13dcc036e5db" xlink:href="tyl-20201231.xsd#tyl_SeniorUnsecuredBridgeLoanFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_69169372-430e-4101-8350-64dad200c1de" xlink:to="loc_tyl_SeniorUnsecuredBridgeLoanFacilityMember_1b77e52f-5cb7-4856-af5d-13dcc036e5db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_a5a11719-3e45-4162-adb5-b87534375d74" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementScenarioAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_srt_StatementScenarioAxis_a5a11719-3e45-4162-adb5-b87534375d74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_94f8d5b9-4e66-4be1-98ab-283a09f8084e" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_a5a11719-3e45-4162-adb5-b87534375d74" xlink:to="loc_srt_ScenarioUnspecifiedDomain_94f8d5b9-4e66-4be1-98ab-283a09f8084e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScenarioPlanMember_782aeb11-a22e-4d4d-a4d4-599a7d8c122f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScenarioPlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScenarioUnspecifiedDomain_94f8d5b9-4e66-4be1-98ab-283a09f8084e" xlink:to="loc_us-gaap_ScenarioPlanMember_782aeb11-a22e-4d4d-a4d4-599a7d8c122f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_9c741a7b-a226-4864-b234-6883b75ea35e" xlink:to="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_81da8d17-9e35-4cda-ba19-648539c6675b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_81da8d17-9e35-4cda-ba19-648539c6675b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BusinessAcquisitionOptionConversionPrice_26d5131a-289f-468a-9af3-195429c6b553" xlink:href="tyl-20201231.xsd#tyl_BusinessAcquisitionOptionConversionPrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_tyl_BusinessAcquisitionOptionConversionPrice_26d5131a-289f-468a-9af3-195429c6b553" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_5c81d4be-e461-43b2-a31c-c09101ffac1d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity_5c81d4be-e461-43b2-a31c-c09101ffac1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm_b4bb6e78-7684-4cbb-a1be-46ffc4a16182" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_us-gaap_DebtInstrumentTerm_b4bb6e78-7684-4cbb-a1be-46ffc4a16182" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tyl_BusinessCombinationTerminationFee_a97aed84-4882-42e0-a905-5b05a4ee33c8" xlink:href="tyl-20201231.xsd#tyl_BusinessCombinationTerminationFee"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4f607741-fcda-400c-900d-461277b0695f" xlink:to="loc_tyl_BusinessCombinationTerminationFee_a97aed84-4882-42e0-a905-5b05a4ee33c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunaudited"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_5ecc77fc-b536-4cfe-9475-2119a996cbd1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_QuarterlyFinancialInformationTextBlock_82d56045-244d-457f-bd34-719ab479e2ea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_5ecc77fc-b536-4cfe-9475-2119a996cbd1" xlink:to="loc_us-gaap_QuarterlyFinancialInformationTextBlock_82d56045-244d-457f-bd34-719ab479e2ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunauditedTables"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_092c7cda-c808-420c-b96a-bd55457fa3c4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_a4e7a3a8-6f59-40e1-984b-f072fc70e987" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_092c7cda-c808-420c-b96a-bd55457fa3c4" xlink:to="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_a4e7a3a8-6f59-40e1-984b-f072fc70e987" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail" xlink:type="simple" xlink:href="tyl-20201231.xsd#QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail"/>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_31f8e5a6-9d8f-40b3-a0cd-b620f68fac80" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c7ca4cbf-c812-43ab-96ff-89ba2c099787" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_31f8e5a6-9d8f-40b3-a0cd-b620f68fac80" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c7ca4cbf-c812-43ab-96ff-89ba2c099787" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_2b955aca-4508-4b7e-ad21-0977ad9c8a5f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_31f8e5a6-9d8f-40b3-a0cd-b620f68fac80" xlink:to="loc_us-gaap_GrossProfit_2b955aca-4508-4b7e-ad21-0977ad9c8a5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_a1624efb-ba7b-49e0-a16a-f48ea65bce68" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_31f8e5a6-9d8f-40b3-a0cd-b620f68fac80" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_a1624efb-ba7b-49e0-a16a-f48ea65bce68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_52201542-f0cb-4f60-9a32-0b555879e524" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_31f8e5a6-9d8f-40b3-a0cd-b620f68fac80" xlink:to="loc_us-gaap_NetIncomeLoss_52201542-f0cb-4f60-9a32-0b555879e524" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_171f5627-eaa1-4815-9134-e506bb7ad24c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_31f8e5a6-9d8f-40b3-a0cd-b620f68fac80" xlink:to="loc_us-gaap_EarningsPerShareDiluted_171f5627-eaa1-4815-9134-e506bb7ad24c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_78c41f97-0c19-44e3-bdd0-d07efc3d44ad" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_31f8e5a6-9d8f-40b3-a0cd-b620f68fac80" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_78c41f97-0c19-44e3-bdd0-d07efc3d44ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>11
<FILENAME>tyl-20201231_g1.jpg
<TEXT>
begin 644 tyl-20201231_g1.jpg
M_]C_X  02D9)1@ ! @$ 8 !@  #_[@ .061O8F4 90     !_]L 0P " 0$!
M 0$" 0$! @(" @($ P(" @(%! 0#! 8%!@8&!08&!@<)" 8'"0<&!@@+" D*
M"@H*"@8("PP+"@P)"@H*_]L 0P$" @(" @(% P,%"@<&!PH*"@H*"@H*"@H*
M"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*_\  $0@#
MI 6@ P$B  (1 0,1 ?_$ !\   $% 0$! 0$!           ! @,$!08'" D*
M"__$ +40  (! P,"! ,%!00$   !?0$" P $$042(3%!!A-180<B<10R@9&A
M""-"L<$54M'P)#-B<H()"A87&!D:)28G*"DJ-#4V-S@Y.D-$149'2$E*4U15
M5E=865IC9&5F9VAI:G-T=79W>'EZ@X2%AH>(B8J2DY25EI>8F9JBHZ2EIJ>H
MJ:JRL[2UMK>XN;K"P\3%QL?(R<K2T]35UM?8V=KAXN/DY>;GZ.GJ\?+S]/7V
M]_CY^O_$ !\!  ,! 0$! 0$! 0$        ! @,$!08'" D*"__$ +41  (!
M @0$ P0'!00$  $"=P ! @,1! 4A,08205$'87$3(C*!"!1"D:&QP0DC,U+P
M%6)RT0H6)#3A)?$7&!D:)B<H*2HU-C<X.3I#1$5&1TA)2E-455976%E:8V1E
M9F=H:6IS='5V=WAY>H*#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6V
MM[BYNL+#Q,7&Q\C)RM+3U-76U]C9VN+CY.7FY^CIZO+S]/7V]_CY^O_:  P#
M 0 "$0,1 #\ ^/?V'_V'_P!N3_@KK^W)\=_A1\*/V[O$'@C_ (0CQ!J%^[ZM
MX@U.6*6)]3FA6*-891MVX^F.*^P/^(3;_@J9_P!)=O\ RH:Y_P#'J/\ @TV_
MY2F?M=_]O'_I\GK]_J /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_T
MEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O
M_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH
M:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?
M_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZ
MOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_
MJ* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@
M#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _
M'_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_X
MA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;
M_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*
MF?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_
M $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)
M=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_
M ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*
MAKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y
M_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\
MQZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H
M_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\
MB$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-
MO^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@
MJ9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?
M])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27
M;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\
MJ&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AK
MG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\
M>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_
M?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^H
MH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /
MP!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?
M^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$
MV_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^
M"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9
M_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\
M27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV
M_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\
MRH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&
MN?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_
M ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'
MJ/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_
M (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(
M3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_
MX*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"I
MG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_T
MEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O
M_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH
M:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?
M_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZ
MOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_
MJ* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@
M#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _
M'_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_X
MA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;
M_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*
MF?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_
M $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)
M=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_
M ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*
MAKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y
M_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\
MQZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H
M_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\
MB$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-
MO^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@
MJ9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?
M])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27
M;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\
MJ&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AK
MG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\
M>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_
M?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^H
MH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /
MP!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?
M^(3;_@J9_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$
MV_X*F?\ 27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^
M"IG_ $EV_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9
M_P!)=O\ RH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\
M27;_ ,J&N?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV
M_P#*AKG_ ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\
MRH:Y_P#'J/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&
MN?\ QZC_ (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_
M ,>H_P"(3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'
MJ/\ B$V_X*F?])=O_*AKG_QZOW^HH _ '_B$V_X*F?\ 27;_ ,J&N?\ QZC_
M (A-O^"IG_27;_RH:Y_\>K]_J* /P!_XA-O^"IG_ $EV_P#*AKG_ ,>H_P"(
M3;_@J9_TEV_\J&N?_'J_?ZB@#\ ?^(3;_@J9_P!)=O\ RH:Y_P#'J^._^"PO
M_!+O_@H'_P $>_AMX.^)'Q(_X**:YXQ@\8ZY/IMM;:'K^JP/;O%")2[&6;!!
M!Q@5_6%7X@_\'O/_ ":S\#_^R@:C_P"D(H \_P#^#3;_ )2F?M=_]O'_ *?)
MZ_?ZOP!_X--O^4IG[7?_ &\?^GR>OW^H **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ 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 **** "BBB@ HHHH **** "BBB@
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
M7\8>-?$=AH^D:;^V-J=QJ.J:I>);VUK"OB*<M))+(0J(!R68@ 5^SG_!Q_\
M\%;_ -@W3O\ @F3\0_V<_AI^T?X)\>^.OB)96^CZ/X=\(>(;;5'ME:YBDEN;
M@VSNMNB11N5WD%GV!0>2H!]+?\$9/^"R_P &/^"POP0U;QMX.\)3^$O&?A&Y
M@MO&O@NZO1<_8S,KF"X@F"IYUO+Y<H5BJ,K1.K+@*S_-G_!P-_P50_X*6?\
M!'^Q\%?$SX2^)?A)XL\,>.M;U&QBTS7OA[?Q7>E-"$EA4SQ:KLN T;E2WEQG
M=%D A\)XM_P9N_\ !/;]H_X!>'OB7^V!\</ FJ>%='\=:9I^D^#=-UFS>WN=
M2@BDDFEOO*<!EART2QN1^\S(1\H!:Q_P>\_\FL? _P#[*!J/_I"* /KC_@@G
M^W-^WQ_P4X_9IM_VPOVC?&'PRTK0)O$]_I=OX1\(^!;V*YFCMXPOG->3ZE(L
M9,SYV"%ODB^]F3Y,'XL_\%5OVE?VMO\ @J3K7_!)7_@FAK'A#PS>> -$N-3^
M+/Q>\8Z0^JC3!#);Q2VNG6"RQ)/-'-=01,TK[2[2C:HBWOB_\&AW_*&S1/\
MLH&O?^CDK\@?^"KGA+]O3_@AS_P6Q\:_MC?!_5-1T6'QWXTU;Q1X+\6-:FXT
MW6[+4;EKJ[TR?>-LOEO*8I87.\;(Y1C=%)0!^WG[6_QK_P""P7_!,CX+:]^T
MM>:AX%_:H\%>'M-EO?$VC0^&7\'^(='@126O(GMI+NWN[:, O*GDI*J D$@,
MP^M?V,_BOXF^.?['?PH^./CI[<:SXQ^&FA:[K#6\8CB^TW>GP7$I5?X5WR-@
M=A7YB_\ !-+_ (.S_P!D#]L>.R^ ?[>W@VS^%7BO6HOL$NL2R^?X6U5I!L*/
M+(2]B'W$;9]\0&=T_(%>X_\ !<_XAI_P3A_X(%>)/A[^SMKEY;0Z=X,T+X>>
M$]2FO?,N(]/D^SV#.95 W2FQ28"1<'>P<8Q0!Y#\??\ @X[^)W[1?[<NF_\
M!-S_ ((P?"#PSX_\6WNJ2V6H_$[QM/.= M!"&:ZGABMF1YK>%%=C<EPKLFV*
M.8.A?Z8^+_PO_P""Z?PI^#]W\2O@U^V-\(OB;XSTJR:[D^'VO?!F72K'5F5=
MS6MM=P:H98G."B&08=BNYHADC\E/^#(WX9Z+K/[6OQI^+MW:H]]X>^'UCI=E
M(RY,:7U[YDA'H3]A09]"1W.?Z1: /SH_X(O?\'#7P3_X*EZW=?L_?$KP*WPT
M^-&E02R7'A&ZNS+:ZND.?.DLI'57\R/!:2VD'F(N2&E5'9=;_@N[^V-_P4E_
MX)Q?LYZE^VA^RMXA^%&M>#=$U*PM-?\ "GC'P9?/?V<=S)';)<174&HQI<9N
M9$!C,*%5D!#-L.?YX?\ @I3XW\3_ +!'_!?#XI_%[X*3/IFJ>"_CE/XETA(2
M8U#RW"WS0X'_ "R<3-&4^Z8W*D8.*_IB_P""Q&HZ9XL_80T+5H(1+9ZG\8OA
ME,D<\?WXI/&.C, RGU!Y% 'PW_P0D_X.B/%/[>/[0\_[*'[>.@^#?"OB7Q&R
M?\*WUOPO:3V=E?W(!WZ=.MQ/,5G?[T+!@'(:/&\QA_TO_P""@&N_M@^ _P!G
M;Q-\6?V.O'7@?3M>\)>&=0U9M&\<^$KG4;?6&MX3,L"RV][;-:DB-UWE91EU
MR  <_P [?_!R9_P1"UK_ ()O?&U/VU_V2M$NK/X1>*M;6<PZ1N1O!.LL_F+"
MI3!BMI'&ZW<8$; P_+MB,GZ3?\$=_P#@MWI?_!3G_@F_\2O@?\<]?MXOC?X!
M^%VK+KBR,$/B;3ULI(TU6)>/WF2J7"+PLC*X"K*JJ ?<W_!,+XB?MB?'/]DS
MP7^T9^V!XT\"WFI?$/PAI?B'3-!\#>$;K3HM&@N[<7"PRS7%]<FZ?RY8LD+$
M%8,!O&&KZ*KQ#_@F5_RC<_9\_P"R'^$__3/:U[?0!^?W_!:C_@X _9\_X)':
M9:?#FS\-'Q[\6M:L?M6E^"K6^$$.GV[$JEW?S!6,2,0VR)5,DFT_<7]X-7]F
M#PO_ ,%U?VCO@KIOQO\ CS^U)\*O@SKOB*Q2^TSX<:+\&I=7&E0R*'BCOI[G
M4TD,VTC?$F-AR-^>%_F]^#GQ-U;_ (*6_P#!>7P7\3OB]=G4HOB9^T7I4]_!
M<-O4:6=4A$=FN?\ EFEHB0*.<*B]:_LNH _(WPU_P<1?&W]A?]O"X_X)Z?\
M!:7X2^%/#ES)) V@_&'X=_:8]'NK.<D6U[/:W+R2) Y#*\R/^ZDC=6BPK.OZ
MB?%33_BSXQ\"Q-^SW\4/#OA[59G6:WUC7?#,FM6<L!C?:!##>6I.6:-MXE^Z
MI&/F#+^"W_!\9\.])L/B!^SI\6+:R OM5T;Q+I%[<!.3%:RZ=- A/LUY<$#W
M/K7Z"?\ !K1^TGXQ_:/_ ."//@=?'FIS7VH> M7U#PBM[<.6>6UM622U4D]H
M[:>&$?[,([YH _.[]G3_ (.;/^"P7[0?[>>@?L'V^B? /2=5USQ\_A;^WI?!
M&K3003+.\)F\L:HK,N4)QD'!K].?C-H/_!QMX.\#7OB+X,_%3]E'QIK%I TL
M/AZ[\!ZYI3WA49\J*9]4EC$C=%\PQIDC<ZCD?S?_ +%WQ0^'OP4_X+S>&?BQ
M\6/%]CH'AO0/V@KN\UK6M2F\NWL[=-0GW22,?NJ/6OZ*OA%_P6K_ &=/VV/^
M"K?@?]CC]C+XJ?\ "6>&]&\"Z_KGCCQ#IBR)I]U=J+6.TM8F=5^T>6'FD=P"
M@+QA68APH!ZU_P $:OVO?VB?VX/V$]&^._[5O@S2?#WCYO$NN:/XBT31=-FM
M(;*>PU*>S,1BGEE=)%\G#@N?F!Z=*^IZY[X<?"OP)\)-.U/2/A_H2Z?;ZOXA
MU#7-0B69W$M_?7#W-U-\Y."\TCN0, %C@ 5Y9_P4V_:;UG]C7_@G[\7OVF_#
M"(=8\(^!KZZT(RH&1=09/*M68'[RB>2(D=P"* /BK_@K-_P<F^$/V.?CG%^P
MS^P[\'U^,?QRN]2ATJ;3UED.F:3J,S!(K-Q"?-O+HLRJUO&T80MAI0ZM&/3/
M@3\#/^#B+QQX1M_B/\?OV^?@QX"U^ZC%S_PKG2/@O_;=E:DC(MIKW[?!(".C
M&-I0"#MD<8)_$_\ X-)_A;:_M#?\%FC\3OB/-)K&I>#? FN>+Q=ZC(9I)M0D
MFMK$W#LY)>3.HN^XY._#=1FOZK: /S2G_P""IW_!2KX3?\%(O@?_ ,$W?VMO
MV4O!GA^X^(7B*\F?XL^"==N+K1/$VE6VG74KPV=K<P^;9SK.+<RK),[H   R
MRI(>/_X.$/\ @JW_ ,%'O^"0'_"$?$/X.^(OA-XH\,^/=8U*TMM(\0^ ;]+S
M2C;B*2,&>+5 ER"DNTMY<1#1YP0^%_2#XQ?LW_#/XX^-/AY\0?&UG<?VM\,/
M%S>(O"UY:.BO'=-8W5D\;ED8M"\5V^Y 5RR1G/R"OQN_X/@O^2 _ +_L<-:_
M]);>@#[(_P""#'[<O[?'_!3G]F6V_;!_:(\9_#/2=#F\4W^EP^$O"?@.\CN)
MHK>-5\UKR?4I!&QF?.T0L-L?7+_)V'_!9?\ :*_X*)_L8_L_W7[3W['OBSX8
M:CI]AX@T72KSPAXW\%7LTW_$QOH-/CG2]M]1C'%S<PY0P?<=CNRN&\7_ .#0
M[_E#9HG_ &4#7O\ T<E>_P#_  7<_P"49_BC_LH'P_\ _4UT.@#U6]\"?\%
M5^"9T_3_ -I+X8M\0T227^U)/A1>C2)'\A0D'V;^V/-5?.#$R^:3L8#9E>?P
M4TK_ (.^_P#@J7\+_BUX/LOVD_@3\*(?"^I?V/K&KPZ/X8U"*[N]"NUBG:2U
ME?4'02-;NP5BK*L@PRG:RU_2K7\O7_!77]@;_A*?^"&'['7_  48\#Z+NO/"
MWPVTSPIX[EACY;3YR\EA<.>RQW+30D\DF]B'1: /Z=?"7BOPYX[\*Z9XX\':
MQ!J.D:SI\-]I6H6S[H[JVF0212H>ZLC*P/H:_,+_ (.&?^"X?[27_!,36O#7
M@7]C[P)X2UW58=-35?B'?^+M.N+JVTFVNYG@TR!5@N(2)IWMK]\,3A+7./FS
M5'_@U#_X**:+^T%_P3&NO@Q\4/%L$6N?L_R'3M1NKZX V^'G22>QN').%2)$
MN+;T5+-2>M?(W_!;KP[K'Q&_X(G>)/\ @H3X[TN:WU_]H[]HK1_$NF0W<16:
MQ\*06%_:>'K,@]!]@1;HC _>7\IZF@#[(_X-]?\ @J!_P4<_X*\>%?%WQG^,
MWBCX3^&/#/@SQ/::5)HGAWX?W[WFIEHQ/-_I$NJ%;<",JJGRY/F<D@!,-YS_
M ,%]/^"SW_!3W_@CK\8O!7AWP'K/P=\8^'?'^EWU[IIU;X>ZA;7>GO;31H\,
MC1ZLRS#;-$1(%3)W#:, G#_X,C_^3+OC'_V5"#_TW0UX?_P?%_\ )5/V=O\
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
M\M]JWA[3/ >N6.I/;1J7D:VCDU-TG95!;R]ZNP&$#L0I_ O_ (-P/VBO@?\
MLJ_\%8O!'QL_:)^)>E^$?"FEZ%KJ7^N:Q,4@A:33+B.-20"26=E4  DD@5_1
M-_P2D_X*6> /^"G'[6_[2OQ#^"6NWNH?#KP>/"GASP?=74<D*7Z1QZI-<7J0
M2 &(2S3.H+*':.&$L%("* ?0O_!.S]H+QO\ M7?L)_"7]I7XE66G6_B#QSX"
MTW6M8@TB!XK6.XN(%D=8D=W94R3@%F('<UZYKMOK-WHEY:^'=3@LM0DM9$L;
MRZM#/%!,5(21X@Z&15;!*!UW 8W+G(PO@Q\(/ 7[/_PI\/\ P4^%NC_V=X<\
M+Z7%IVB6'F%_L]M&-J1@GD@# &>PKIZ /P9_X+'?\'"W_!5W_@E1^VSJ7[*=
MFWP1\8Z>FA66KZ7K<OP_U.TF>"Y5OW<L0U9P'5XW7*L0P"MA<E1]Y_!S4_\
M@O+\;_V??"7QS\)_M#?LN6\GC#PAI^NV.DZC\*]>00B[M8[A89)DU9_NB0*6
M"'IG%?B+_P 'A?\ RF!D_P"R7Z)_Z'=5^EWC#_@OY^QE\&/^";_P/_9P_9P_
M:"LO$_Q@\2>%O!GA2+2_#$DCMH#O'96][/<SA0D+1()55 QD,I3"[0SJ >V?
M\$[/VOO^"OWQ=_:P^-G[$G[?'A3X5^"/%?@7PGI&L^#_ !!X.\-7MWI^H07=
MU-']K437P-S RP.BC,+HZN' *%*_/C]O[_@YD_X*[?L/?MW^./V(X]"^!?B:
MY\)^(H=-LM;7P+JEL+Y)XHIH7:+^U7\MBDR!E#, P."1S7[\Q?"KP)#\6)_C
M?%H87Q/<^'8M#GU(3/E[".>2X2$IG;Q++(P.,_.1G%?R1_\ !>K_ )6"/BM_
MV4#0O_2#3Z /Z:/CKI'_  5(\$?LFZYXE^#WQD^%7B?XL:-I<NH66F7'PMOH
M--UF2*WW'3XD&L-)"\DBD),SL/F4,G5A^2W_  2F_P"#E_\ X*1?\%"/V[_"
M/['7Q2U;X+?#ZV\4F]BAUA/AYJ5S*UU#;2S):JCZLBJ\AC*@L>N  20*_?ZO
MY+/^#@K]E7QM_P $I_\ @LK-\=_@:K:+IOBC7+;XD?#N^MX\1V5]]J\VYA&,
M >5>QR,(Q@+%-".AH _K O;'Q=+X,ETVP\164.O-IC10ZM)I;/;I=^7@3FV\
MT%HQ)\WE>:"1\N\?>KX'_9T_:0_X*^_%[_@J!\4/V3-0^(/P2N?A1\')M);Q
M/X[L/AMJ45[J,U]:Q7D>E0PMJ[QQ7(A=O,EW2+$/+8H3(L=>]^#/^"E_P4\4
M_P#!,"S_ ."H!8GPO-\.O^$DN-,MI0TPO%C*R:6AYW7'VP-: #.9< =:O_\
M!,W]G3QK^SO^ROI[?&79)\3/'VJW?C;XK72C_6>(=3?[1<PCG_5VZF*SC X$
M5I&!TH ^ /\ @O\ _P#!8'_@IU_P1N\;?#N3P#XB^#OC+P]\2HM8;3X=6^'F
MH6]WILE@]IOC=X]6*3*R7L.'"H<H^5Z5Z9_P3;_:<_X+@?\ !1[]B7P;^VCX
M1^-/[-7AFT\9+J7V70-2^%FMSR6YM-1NK$AI4U@ AFM2^0O <#DBOC7_ (/G
M/^;7?^YV_P#<!6'^R;_P6Z_9._8@_P"#9#0_V=?#7QK@N/CK?^%O%FBZ)X1T
M7S6OM)N=0UO5/*O9I%79;B*"X2Y4LX9L(%!W< 'WK^S!^VI_P6:\%?\ !6'P
M[^P7_P %$?AY\'E\'^*_!>KZYX9\9_#32-02+5OL:QY6.2ZNF,;QM(@EB>(,
M-Z$$JRLWZ2UQ8^$W@;QMK_@7XM^(M*,^O^#["X.A7_FD-"+RV2*X4_W@ZJF0
M>Z*>HKM* /C'_@M!\>_^"E7[(/[,FN?M:?L(#X>>(=/\%Z>MYXM\%>+?!]Y=
M7C6*%C<7UO<V]_""(4*NT+1?ZM)'$F5"-\/?\$%?^#@W]M;_ (*I?MA7G[.O
MQ^\4_"7P:EEX?;6-,TW1? M\;GQ L,\8N;6*>;5"L,BPNT@_=R':KMMQ&P/[
M4:GIFG:UIMQH^L6$-U:7<#PW5K<Q!XYHV!5D93PRD$@@\$&OY#_^"F'[,?Q>
M_P"" '_!8BS\<_ !Y['2-+UZ+QE\)+^8NT4^ER2L'T^5NKB,^=9RJ3N>+#'
ME% ']:OQ8B\;R_#W4V^'?C_1?"VJQ0>;!K_B+16U"RLU0AI'E@6YMBZ[ W/G
M)MSG/&#\9_\ !)3]H/\ X*H?MO? _5?VD_VA_&WPF\/>%-;N;^V^%R^'_AOJ
M"W&L6D<C16^MS"?53Y=O*5+I;[=\B$-YB*REN;^*G[:7A'_@L+\*OA'^R1^R
M/XFN8=(^._A-/%/QHU2QN<7'A7P3%+Y%_IKR)CR[V]NTETM<9PL=Y(!A U?H
M)X8\,^'O!7AK3O!OA'1;;3=)TBQALM+TZRA$<-K;Q($CBC4<*BHJJ .  !0!
M^!W_  5C_P"#D#_@K#_P3(_;I\7_ +'D=O\  _Q;:^'XK&YL->;P!J=I)<07
M5I%<H)(O[6<*Z^9L.&(;;N&,[1^CNC:9_P %^/&'PMT[Q_X*_:(_95FO=6T6
M"_LM-U/X7^(+>/,L2R+&\R:K*5QN +"-O7':OP$_X.P/^4VOQ&_[%_P[_P"F
MFVK]BV_X+:_LJ_&?]H#]D#]A#]D/XU0^+-<UCQ7IL_C^]T$RBTL+&TT>Y_T-
MY2JK+))<>42B%@JP-OP67(![+_P1L_;9_P""B?[2WQ,^/?P&_P""DOPL\&>%
M/&?P@U_1[&WL_!FGW$,%Q#>07$PGWRW,XFC=(XGC=2ORN<C.0/NVN;T/X3>!
MO#GQ2\0_&31M'$&O^*=+TW3]<ND<XN8K%KIK8E>F]?MDRENI78#P@J]X]\<^
M$_AAX&UKXE>/-;ATS0_#VDW&IZSJ-RV([6T@B:665CV541F/L* /A?\ X*._
M\%N_A]^PA_P4G_9Z_8CU2:P?3_B!?/)\2M1G;YM%L[O=9Z6X;.$#7FZ24MRL
M,.>C@U]_5_)3_P ' G[+_P"TCKMS\/O^"O'QB;4%M/VE?MFH1Z)=1X/A2!'W
M:+I[,,89]'^R.01GSH;G-?T&_P#!!;]OX?\ !1;_ ()H^!/B_P"(-9^V>,?#
M]O\ \(QX^+R;I&U6R1$,[_[5Q"T%R>P-P0.E '=?\%0OB?\ M=_L]?LD^/\
M]IW]E7QWX(M+GX<^!]1\17N@>,_!MSJ,>J1V4+W,J+-!?VYMSY,;@$I(-P&<
M \?EW_P1K_X+M_\ !7__ (*__M$^(_V??#FM_ /P+-X>\%R^(7U2^^&NK7ZS
MJEW:VWDA%UB,J2;D-NR?N$8YR/U4_P""L7_*++]I;_LW_P 9?^F.\K^>O_@S
MR^-'P=^!W_!0?XB>)_C7\6/#/@_3;GX-75M;:AXIUZWT^"6<ZMICB)9)W16<
MJCMM!SA2<8!H _0'_@H=_P %R?\ @K9_P1D^-7A/P[^W-^SC\%OB/X"\7I,^
MA^*/AB=5T::Z$!C%Q"XO)[I8;A!+&^S8499%VOP^S]0_V-?VNO@U^W;^S3X4
M_:J^ >L2W?AGQ;8&>T6ZC"7%K*CM%-;3("0DL4J/&P!(RA*EE(8_@[_P=G?M
M_P#[.O[=_B+X/_L:_L3>,[/XK^(M#UJ^U+5KGP"W]JPB>>**&WLK>2VWK<S-
MB5G6(MLVH#R2!^J'_!N[^Q)\8_V"/^"6_@WX.?'ZPDT[Q;JFHWWB#5M"ED#-
MI'VN0-%:MC@2+$L;.H^[([KSC) /N&OS7^ _[3'_  7<_;$_:2^-^E_!I/@!
MX(^$OPX^+6N^$/"_B/QKX.U>\U#6?L-W)#E(K?4(UD"*J+),3&ID)5%8JX3]
M**R/!7@/PA\.=(GT'P3H4.G6=SJ]_JEQ!!G#WE[=S7EU,<DG=)<3S2'MESC
MP  ?S^?&_P#X.7/^"OWP3_X*&ZG_ ,$^;_3O@)?ZEIGQ(@\(/XDA\":LD$DL
MES' +@1'52P4&0-MW9XZU]O?M\?M,?\ !P+^P-X)T/XY7UY^SG\1? H\3:=I
MWC.;P[X$UFRO]'@NKN*W6Y\J74W62+=(JEU8E&=24*;F7\/OV]?^5E+Q7_V=
M!8?^G2WK^N7X@> /!OQ4\%:G\.OB%X?@U71-8M&MM2T^Y!V31-U!(((/0@@@
M@@$$$ T >;?MT_MT_L[?\$Z_V==7_:9_:8\6-IN@Z:5AM+2U027FJWCAC%96
ML1(\V9]K8&0JJK.[*B,P^"_^"<W_  4<_P""M'_!:^_\1?&?]GW3/A[^SU\#
MM%U9].TK7=>\,3^)]=UJZ0!GBC5KFVM]BJR;Y-@",X1?.*OL_.K_ (/0OVF/
M%_CG]O?P5^R]'JDR>&_ 7@*'4A8"0[)-3U":4RS$="1;PVJ+G)7Y\'YR*_:7
M_@W]^&>A_"G_ ((V_L_^']!M8XTO_ L6LW!C7!DGOY9+V1B>YW3D?0 = * /
MG+_@HK_P4K_X*J?\$3=4\-?%O]I71/A]^T#\$/$&L)IE_P"(_#7AJ?PSKVC7
M;*SK%*@N;FV97C20H^W#M&48PDIN^^?V)OVU_P!GS_@H+^SMHO[3G[-'BXZK
MX<U@-')%/&([K3KM,>;9W463Y4\9(RN2"&5U+(ZLWSY_P<<> -$^(G_!%GX[
MZ9K=LC_V=X<M=5M'9<F*>TO[:=&4]B?+*Y'9B.A-?D9_P92_M+>,/#/[8GQ,
M_9-N-4F?PWXL\!'Q%%9LQ9(=2L+JWA#J.B%X+N4.1][R8@<[5P ?H5_P34_:
M3_X.'_\ @H-^S;I'[4VOZG^S7\-?#GB>,S^%+36? &MWE]J%J&*B[:*/5$6&
M%R"8R7+.HW[0K(S?%7[$/_!RY_P5^_;8_;L\,?L-:#IWP$T'4/$VNWNF1>(+
MOP)JTT,#6\$\Q<QKJH8AA 1C/&X>E?T!?#WP!X.^%'@'0_A=\.] @TKP_P"&
M](MM+T/2[;/EV=G;Q+%#"N23M2-%49).!UK^1K_@@K_RL$?"G_LH&N_^D&H4
M ?NG\4_VJ_\ @N3^R-^VG\"?AI^T/9? ?Q?\(_BM\0[3PQJGC#P-X1U6SO--
MN)5=Q!)'<7\@A=TCD:.0>8A\M@VT[0WZ55B>-_ASX(^)%MIMIXX\.P:C'I&M
MVFKZ8)\@VU];2"2"=2""&1QGT(R"""0=>[N[2PM9;^_N8X(((VDFFF<*D: 9
M+,3P  ,DF@#X(_X+-?\ !;'P1_P2L^+/P&^&^HK:73^/?&Z2^.UF4NVE^%$S
M!<784'(D\Z:-X^S"TF6OOBUNK:^MH[VRN(YH9HP\4L3AE=2,A@1P01R"*_EL
M_P"#B3X%?&_]JGP#HG_!<"^U*]N? OQ#\;WWA?P?HLL) T?PM:@QZ'=[2-RB
M^:#4KQ\G:INX .7K]?/^#7W_ (* ?\-O?\$QO#_@[Q;K7VGQI\()$\)>(1+)
MF6:TBC!TZZ/?#6VV(L3EI+64T ?8?[8US^TUH?P7UOQO^R_\1_"&A:UH&@W^
MH?9_&7A"XU6VU"2*'S(HB8+VV:!24=6<>8?G!V_+AOQ7_P""3?\ P<@?\%7_
M /@IO^W5X0_8]FM_@?X2M?$$5]<W^O+X U.[DMX+6TEN76.+^UD#._E!!E@%
MW;CG;M/[H?M"?\D#\<?]B?J?_I+)7\J/_!I__P IM?AS_P!B_P"(O_33<T ?
MUE^$++Q5IWAFSL?''B"SU75HH0+_ %'3]-:SAGDS]Y(6EE,8Z?*9&^M:5%%
M%/Q#;:Y>:!?6GAC5;>PU*6SE33KZ[LS<Q6\Y0B.1X@\9E56P2@="P!&Y<Y'X
M*_\ !7'_ (.,O^"K_P#P2]_;D\2_LB01_!#Q?9Z18V-]I^NO\/\ 4[22:"ZM
MTF"R1#5G"NA9D)#$-M#?+G:/WVK^3+_@[9_Y31^,/^Q/\/\ _I"E '[A_&;X
MF_\ !P#\+/V79/VG_A5XE_9F^);6GA5-?O?!3_#O7=+O9K;R!/)':RC6)4EG
M"9PK[ V,#D@'CO\ @AM_P<@_#W_@J[XWO/V</BU\+(/ 'Q2M--DO]-M+#4&N
M=-U^WB ,QMS( \,T8.XP,7R@+JYVL%]A^(W_  66_P""<_[(?[#&G_$7Q9^U
MG\.]:U72/A[;'3_!NA>++/4-2U2\2R0):):P2-)EI,(S, B9)=E )'XF_P#!
MI3_P3T_:0^)7_!1#PS^W-)X&U;2/AK\.;#5)'\37MJ\%OJ]Y=6%Q8QV=L[ >
M>P^TM+(4RJ+%AB#(@8 _:_\ X+A_M9?MQ_\ !/C]C?Q9^V]^S/XV^'-UI7@Z
M72EU#PAXQ\#WEU+/'=WT%B9([N#480&$MS&VPPXVAANSBOC;_@BY_P %?/\
M@L[_ ,%E_P#A97_"#^+?V>/ W_"N/[&^U?VM\-]8O/MO]H?;MNSR]739L^Q-
MG.<^8.F*^I_^#H[_ )04?'/_ +EG_P!2?2:_)#_@T_\ ^"CO[&/_  3J\(_M
M*^,/VOOC=I_A./5[?PI+H-A+!+/>:L;8:T9DMH8E9I64S0@\  RKD@'- 'Z,
M?MU_MB_\'"O_  3YU?P=\0?'FB?LZ^/?A?K7C;2=#\1>(_"/A'6+>\T87EW%
M;J]Q!/J!$:.T@1)5:11(RJX4L@;WW_@KK^US_P %#/@'\0?@3\"_^"<'P]\#
M^(/&7Q;\5:GIMV/'EA=365C;6MK'</=.]O/$8HXT,CNQ#DA0%4L0K0?\$G/B
M%H?_  5)_P""647Q2^.&CW5WI7Q,\?\ BS5?[+N[QFDLK8>*KZ>RMU<$D?9U
MC@5<' \E<=*^Q]6^'O@S7?&VC_$;5_#\-QK?A^UN[?1M0D+;[2.Z\KSPHSCY
MQ#$"2,@+@$9.0#\D/^"P'_!3G_@MK_P2 ^"?@WXP?$KQQ^S=XP;Q;XA;2#IN
MA_#G6H!:2K;O,7\R75?WB_(5'RJ><X'2NF_X)>_MT?\ !<__ (*F_L;7'[67
MPI^(O[,WAR4:[?:39>'/$'P[UPB6>V6,AGN(M4;RT8R 9$;$8Z&O,_\ @]P_
MY,N^#G_94)__ $W35[!_P9Z?\H?HO^RH:W_Z!:T >Q_\$M_VI?\ @IA^VU^S
M)\4[/]H]?A[\,?C)\-_C=J?@R[2T\%7=_ID<%KINGW"EK<ZDCREY+PNLR3A&
MBV;5^;=7YD_LT_\ !S;_ ,%>OV@_V_O#'[!T^A_ ?2;W7OB.OA6[\0+X'U6>
M.U(N6AEN%C_M13)@(S*A9=QP"5SD?T$>%_A[X+\%:UXB\1>%?#T%E>^+=935
MO$=Q#G=?WJV=M9+.^3C<+:SM8N,#;"O?)/\ (7_P3>_Y6*/ 7_9R%Q_Z<)Z
M/ZW],\/?&R#X73:%JWQ1T"X\8-'((/$D/A"2*Q1BV4)L3>LS +P1]H&X\Y'2
MOCG]BSX^_P#!5GXR?M[?'']FOXY?%#X-6OA'X'ZYH=J^I^'OAIJ*7OB6+4K1
M=0CV>;J[)9E;9E5FQ-B1\ ,$.?O2OD#]B3_E*3^VS_V,'@'_ -1:"@#X]_X+
M_P#_  6!_P""G?\ P1N\;_#Q_ /B+X/>,O#OQ*BUA]/BU;X=ZA;7>FO8/:;X
MW>/5BLP9+V+#A4.5;Y>E>H?L%?M,_P#!<[]OK]@OPA^VY\*?BM^S%97GB^RO
MY].\%^)/AGKT<*O;WMS:;)+R#6&8!FM]VY8CC?C!QS\9?\'SG_-KO_<[?^X"
MOK'_ (("_P#!0']AG]FS_@A_\';'X]?M?_#;PG>Z)IFM-JFDZWXSLH;Z#.MZ
MA(JFU,GG,[(RLJ!"S!AM!R* /._^"?\ _P '1_CGQE^V^W_!//\ X*:_LV:-
M\-O&K^+9/"T?B+PM?RM86NM+.8%M+F"=Y&1))0$6X29TW.A*A&,B_HK_ ,%$
MM?\ VW/A_P#L[^(OB[^Q%XS^']MKWA+P_>:K-X?^('A:ZO8-86"/S3$EQ;WM
MN;5]B/M+)(K,5!V#+#^:/P-\#/BW_P %Q_\ @NYXE^-W[)GPYUE? 6K_ !@C
MUK4O%TVG/%:Z/HUO<1D74\A 6.>2&$.D!.]I'"C."P_J9_:P_P"36?B7_P!D
M_P!9_P#2&:@#\'O^">O_  >/?M!^+?VJ?#W@7_@H3X"^'>D_#;7)38:EXC\'
MZ+>VMSHD\A417DOG7<ZR6ZMQ*H4,%<N"3'L?]]_B);_$3QI\/3+\!?B5H&BZ
MI>1QS:9KVK: ^LV31,-P;R(KJV,BL""&68<>N:_GH_X*X?\ !"?_ (6A_P $
MP/@E_P %/?V1O!V?$FE? 7PI/\7/#.FP<ZI9QZ):9UB)%',\2+^_ ^_$OF<-
M&YD]'_X-2O\ @N<+B+2?^"67[6?C']X@\CX,^)=3N/O+_P! .5V[CDVQ)Z9@
M!XA0@'Z0?\$G/CU_P4Q_:>N?B!XN_;+\9?"6RTGP)\4=?\#KX?\  G@B_BGU
M*?3)OL\E\+RXU&18HVFSMC\AF*IDLI; ^V:^4/\ @DK_ ,B7\=_^SK_B+_Z>
M9*^KZ "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "OQ!_X
M/>?^36?@?_V4#4?_ $A%?M]7X@_\'O/_ ":S\#_^R@:C_P"D(H \_P#^#3;_
M )2F?M=_]O'_ *?)Z_?ZOP!_X--O^4IG[7?_ &\?^GR>OW^H **** "BBB@
MHHHH **** "BBB@ HHHH **** "O,?VUOV?S^U;^Q_\ %#]F>._2TF\>> M6
MT*UO)"=MO/<VDD44IQV61E8C_9KTZB@#^13_ (-WOB??_L'_ /!<SP3X#^/M
MC+X8N;O5=5\!^)K34_W;V-_<1R00PR G /VZ.WC.>!NSVK^NNOS[_P""LG_!
MNE^QU_P5'\4'XV#7-1^&?Q56)$?QUX9M$F34?+7;$;ZT9D%PR  +(CQ2X55,
MC*JJ(_@C^RS_ ,'#GP-\*6?PJD_X*(_ OQ[I%A"MM:>+/'_PVU*;6U@4;59_
MLUU$D\@ 'S2N[,>6=CDD ^\?$GCWP3X/U71="\4^*[#3[WQ)J3:?X?L[NZ5)
M=1NE@EN&AA4G,CB&&:0A<D)$['@$U_-#_P 'DG[&?C3X6_M\Z+^V79:+-+X4
M^*/AJTL[C4TC)2#6;"+R'MW(X4M:I;.F<%]LN!^[)K]V/V:?^"<MYX$^,UM^
MUI^U_P#M"ZQ\;_C!864UIH'B36-*ATW2?"MO,NV:+1]*@+161D3"23LTL\BC
M:9-I93ZO^U=^R9\ /VW/@;K/[.G[3'P\M/$OA36XQ]ILK@E)()5YCN()5(>&
M9#RLB$$<CH2" >/_ /!$CXT^'?CW_P $E?V??'7AN]CG2U^%^E:)>F-@=EYI
ML"Z?<J0.A$UM)Q]*^?O^#L?XT>'OA=_P1@\<>"]3U&*'4/B!XCT/0M'B9AOE
MD34(=0E"COB"QER>V?7%0?L;?\$=?V_/^"3EWKO@K_@G-^W!X0\2_"_7M3:_
M7X=?'/PC=3?V5<,H5IH+W3;B-C(RJ@;]TB-L!*;OFJC^T'_P0=_:)_X*@_'3
MPY\6?^"N7[9.EZUX4\([_P"P?A!\'/#MQI.E1EV4R,]Y=SRW#M($19&"B0JN
M(Y(J /E/_@RC_8P\;>&O#GQ3_;P\7:1-9Z3XCAM_"G@V26,K]NCAE,]_,N?O
M1K*MM$KC(+QS+U0U^G/[+W_*6C]K#_L3_AK_ .DVMU]#^"_A5X6^#GPBLO@]
M\ ?#NB^$]+T'1?[/\*Z?!I9>QTT(A6',$<D9D16P642(S\_."=U?+'P$_P""
M>_[>WP:_;@^(W[9NN_\ !0WP7XBC^*=MI5IXF\$R_ JXM[&VMM.5TM%LI!K[
M20.B33@NYE#F9V9&(3: ?@/_ ,'''[)'C/\ X)E?\%A6_:'^""RZ+IGCG5H/
MB'X#U&SCPMCJZ7(DNXDQQNCO4\\*!A4N8A7]#O[!_P #/B%\&O\ @GQJWB?X
MYVR)\3OB?:ZOX]^*.Q"HCUO5(FG>U ))5+6'[/9(N3A+1!DUO?M^_P#!-#X#
M_P#!1#6_A'KOQGBQ+\(_B1:^*M.VVJR_;XHQF;39,D;8)W2W:3J3]G48Y->D
M_M,?#WX\?%'X9:EX%^ OQB\-^";_ %73;JRN=9\0^!YM<,*RQ[!)#%'J%FJN
MF6(WF12=N5P"& /Y5?\ @U8_Y3C?"+_L'^)/_3!?U_1=_P %]_\ E#;^T)_V
M3^;_ -'15\1_L!_\&GOQ5_X)U?M9^$_VO_@Q_P %+](U#7_"<ESY&GZ]\"WD
MM+J&XM9;6:.01ZZCC,4SX96!5MIYQ@_?'_!1?]B+]I_]O?\ 91UO]DS3OVK_
M  =X(TKQ?HD-AXPU>#X37-_=7!6<2R&UW:U&EM'($C38ZSL!YF),LNP _%__
M (,NO@U\'?C#\3_C]:_%SX4^&O%*6&@^'GL(_$>A6]\+=FGO@[1B9&V$X7)&
M,X&>E?T9>%?!_A+P+HR>'?!'A;3M&T^)B8['2K&.WA0GJ0D8"C\J_,?_ ()&
M_P#!O'\=O^"0'Q:\1_$GX-_\%!_#?B>T\7:3#I_B#1O$?P0F57CBE\R.2*6'
M75:*127&2'4ASE20"/U)H \0_P""BG[4VH_L?_LD>)_BUX0TM=3\8W0@T+X<
MZ%P7U;Q)J$RVFFVJJ?OAKF6-G Z1I(W137RU^SE^QY_P5L_9^_8ULOV*I?AA
M^ROXF\.R:#>V'BF[USQQXD:?Q%-?F634;JZ*Z9AI+F6XG=_^NF!P!7<_M[?\
M$S?VS/VT?VFOAE\</#W_  4'\.^"_#?P@\90>)_!G@(_!B74;>?48L!9M1F.
MM1&[8(9(U,:0;$E?: S%S]B^!K/QSI_A2SL_B5XBTG5M<2,C4-1T/19=.M)V
MW'!CMY;FY>(;=H(,SY()R,X !_'Q\#O$'QN_X-]?^"TFEP_%B.-+OX:^+([+
MQA#I$TDUOJN@7L2^<T)>-&F5[2<2QED4^8L9*AEP/[$O#^OZ)XKT&R\4>&M4
M@OM.U*TBNM/O;60/%<02*'21&'#*RD$$=0:_*+_@JM_P;+_$C_@J_P#M-P?M
M.?%']O/POX3U&U\,VVAPV'A?X'S;)H()9Y4EG>;76:6;,[)O^4;(XUV_+D_7
M?[!G[$W[:G[#W[(&E?LI/^W!X/\ 'A\)VD5CX)\2>)/@[=QRV%@F_;:W,<.N
MC[4L:F..(J\)2.,*?,X*@'\V?PI\.>'O%W_!SN?"_BS0K/5-,O\ ]LC4H+[3
MM1M4G@N8F\13AHY(W!5U(X(((->Z?\'-?_!(+6O^"<G[3>G?M^?LCZ3/H?PZ
M\9>(4N\:"I@'@[Q(K>>%BV8\B&5D,T!7 C=)(P$58@?MGPM_P:1_&/PE^V?:
M?MY6'_!4_3Y/'MI\2!XX\R?X#DVDNJ?;OMK!XEUP'RFE)!0,#M) (ZU^J_QA
M_9>T3]K#]ECQ#^R]^V.VA^+M/\6Z3+8>()M!T*73(&#'=%-!#-<W3P2Q,$D1
M_-<K)&K#&,4 ?-G_  0/_P""NOAS_@J[^Q_;Z[XJOK6V^*O@A(--^).D1;4\
MV8J1#J42#I#<A&;  "2I*@X56;XI_P"#WG_DUCX'_P#90-1_](17:_\ !/O_
M (-;OV@?^"9W[35E^TY^S'_P58@@O[>&6SU#1=9^"33V6KZ?(07M+M8]<C,B
M$JC!E*,KQJZX(KVW_@L'_P $.OVA_P#@L-;>$?#?Q1_;R\+>#_#_ (*O+R[T
MK3?#WP5N)99YK@(A>>:;73OVI&%4(B#+.3G("@'._P#!H=_RALT3_LH&O?\
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
M]Q=GQ3IMWL09&XB*TE8C^ZC'H,CY(_8G_P""$7_!6;_@E)XK\1:)_P $^/\
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
MXCUM9/FU+PQX5GT>V9-B#'V>>^O&W;P[;O-QAE7;\I9@#\YO^#O'_E#9K?\
MV4#0?_1SU\__ /!D-_R:Q\</^R@:=_Z0FONC_@L'_P $M/CY_P %8?@S_P ,
MUG]L/PY\// I\06NK26MM\*9]3U*>2"-E2*2Z;6(8S'YCM)A8%;*QC/RL7\_
M_P""-_\ P1"^/O\ P1W'B;PQX!_;K\-^-O"GC'4[.]US1]:^#4]M<QR0!D+6
MUS%K9$3/&Q4EXI0"J,%X(8 _1*\L[/4;.73]0M8Y[>>-HYX)HPR2(PPRLIX(
M()!!ZU_('^U/\/\ XD?\$ _^"ZS:U\+='N)+#P-XXA\1>"+02,HU;PW>EB++
M?@DAK:6>Q=P/OI(0.!7]@%?'7[?7_!'OX,_MY_MK?L^_M@^.;BVAN/@WK<UQ
MKFG26V\^(+-,W-C;.W3;#?HDA5AM:.:=3RPP >A?\$S/@#XZ^!W[,-OXA^-E
MHB?$[XF:U=^.?BDR\^7K>I,)7M ?[EI"+>R0#@)9IBO8_BS_ ,DK\3?]B_>_
M^B'KH*\W_:C^&OQZ^+GPLU3X=_ ?XS>&_ ]WK6D7EA>ZSK_@:?7'A6>/RUE@
MCCU&S5)$!<C?YBEBN5PI# '\M'_!J+##<_\ !:_X=V]Q$LD<GAWQ&KHZY# Z
M1<@@@]17])/[('[!/@O]CS]L/X]_%'X1^!K#0?"/Q<C\-ZS'8Z8L45O%K$"Z
MC#?K' F#&&!M9R<!6>YDV\A@/SJ_8O\ ^#2GXY?L#?M'>'_VI_V<_P#@K!:6
M'BOPX;A;)]0^ JW-O+'/!)!-%+$VM8=6CD<=00<,I# $?7_[0_\ P3Z_X+#_
M +0WP]O/AI-_P6ST;P98ZC T&H7?@/\ 9PCL+V:)A@JMRVN22P?[T+1O_M8S
M0!]/_LU_M/\ @[]I^X^(-W\/X(Y=(\#?$6\\(P:Q!>"6/5)[2UM&NI4PHV".
MZFN+7&6R;0N&PX5?3:^=?^"5/_!/W3_^"8O[$OAG]D"U^)K>,[C0[[4KS4/%
M3:-_9YU&:[O9KC<;?SIO+V))'%_K&W>5NXW;1] ZQ%J\^D74/A^^MK:_>V=;
M*YO+5IX8IBIV.\:O&TBAL$H'0L 0&7.0 ?RM_P#!X7_RF!D_[)?HG_H=U7[6
M>./^"<?PF_;L_P""3WP+FE^%VCW?Q$\*?#KP3KG@;Q)]FABOK:ZM+:PG:!;A
ML$131QO$Z,VP[PV R*R_/_\ P4J_X-<OC%_P5!_:HU+]JSXV?\%)=$TC5+S3
M;73K/2/#WP-D2UL[2W4K&BF777=V)9W9F;EG. HPH_1_]B3X#?'C]F;X#^&?
M@1\9/CIX:\>6_@_PS8:)HNK:)X FT*XD@M(1"CW ?4KM)',:1@E%B&X,<88
M 'L5?R!?\%ZO^5@CXK?]E T+_P!(-/K^NOQ=:^+KWPY=6O@/7--TW5W0"ROM
M7TJ2]MHFW#)>".>!I!MR,"5,$@Y.,'\9OVO_ /@T>^*G[:?[5OBW]L'XH_\
M!4#3K/Q1XOUI=2NX=%^!;16UJR(D<4<2OKKL%1(XU&YF8[<DDDF@#]JZ_,/_
M (.N_P!@0_M??\$T[[XV>$=&^T>+_@C=2>)+)HH\R2Z0RA-3A![*(ECNC_UY
M =Z_0[X,Z#\<?#OA*/3?CY\3?#7BO68U13JOACP;/HD,F$ 9F@FO[P[F;+?*
MZ@9QCO71Z]H6C>*-#O?#/B/3(+W3]1M)+6_LKF,/'<0R*4>-U/#*RD@@]0:
M/YOO^#6SQA\=OVT]-T[_ ()V^*M/:X^#/PH^(L'Q3\1WLLA87$L0']G:&5(*
M^2^IQQZCM/WC93#O7])E?(O_  1[_P""3/PR_P""2?P8\8_##P/K2ZQ>>+O'
MVH:Q<:P\1$O]G"1H]-LV8\L8;4+N/0RS3D<$5]=4 ?@#_P 'SG_-KO\ W.W_
M +@*]K_X)L?L#^!/^"BG_!I_X-^ 6M^!-.U7Q-<>&O&-QX OKJ*)9]/UR+Q%
MK$ED\4SX\D-,J(Y#*&C=U8[6->O_ /!8?_@@3\>?^"QGCGPCKWQ8_;^\.^$]
M&\!P7\7AC0] ^"LTK)]L>!IY)YI=<S*Y%M N55% CX7)-=)^PO\ \$DO^"DG
M_!/7]G'2_P!E?X"_\%8_!TWA+1+N[GT>#Q#^S6+F>T^TSO<2HLBZ\F5,TDD@
M#!B#(1G&  #ZX_:$_:2\+?LF_#+P??\ BVVCNM6\4^,O#O@SPWHIO1"]_J>I
M7D%HJ(VUN(D>6X? .(K>0]J]8K\VM-_X(=?MA?$C_@H!\,?VZ?VU/^"LE[\5
MH_A=KIU/0? <7PCBT73H'V,%$"PZE)' V_RV:4Q/(XB568X!'Z2T %?C]_P>
M@?"CP%XC_P"";/@[XOZMX?AD\1^&/BE:66BZKC$L%M>6EU]IASW21K>W8C^]
M"A[<_L#7PE_P6$_X)(_M$?\ !7'X3V/[/WB/]M7PMX$\$Z;XN77K>STSX/W%
M[?S21Q3PP1S7,FMHCJB7#[MD*;W"MA0-M 'R#_P9)>'-!@_8H^+_ (OAT>V7
M5;OXHQ65SJ B'G2VT.G6\D4+-U*(]Q.RKT!E<_Q&OVKK\]_^".W_  1?_:&_
MX(_>%?$7PQ\!_MR^%_&OA+Q1K\&KZEINM?!F>VNH9TC6*0P7$6N$)YD2*OSQ
MR!616 ^\K??GB*#Q#<Z%=V_A/5+.RU-X&%C=ZC8/=00RX^5I(4EB:10>JB1"
M?[PZT ?R7?\ !V!_RFU^(W_8O^'?_33;5_0C\1OV /!7QV\1?LF_M=>$O .F
MIXX^%>KZ5>:AKT,<4-S<:'-I$T%Q;R.<&95EDMY54DE2C[0-[9^-O^"@_P#P
M:D_%C_@H_P#M8^)_VO/C1_P4MT?3M<\2_98VTS0?@9)':6D%O;QV\,<8DUUW
M.$B4LS,2S%CP"%'V)X4_8K_X*_\ @OX6Z7\+M!_X*^>!432-'@TZSUJ7]ER*
M2]V11K&DC%M=,32849)CP3_#0!]">,OVGO!_A;]JCP3^R/901W_B?Q;X=U7Q
M#=01W@5]+TFQ,,1NY$"DD27-S#"@)4,?-()\LJ?FC_@L]J?Q8_:'TSP-_P $
MO/V;8-"O/%WQAOI=6\8P>(=1N+6QMO!NDR13WXNIK6.6:&.\G:TT\%4.\74H
M_A8C(_X)R?\ !&3XX?L:?MI?$+]O/]HK_@H5J/QS^('CSP6WA[^T]<\!#3/L
M$1N8+CY0E_,OD@VT2K!&L2*%^7%7OAE_P3"_;\\!?\%#/%'_  42UW_@I)X*
M\1Z[XI\)+X7E\+:G\ KA=,TO2$G2XBMK+R_$(FAVRH7)9WWM+(SAB05 /+/^
M"J/[#'_!7'_@HE^PWXE_9@^(/PB_9CAM8D@U3P_+X9\8:^;ZSO;,[XA:)-IJ
MQ!W3S+?#E5V3L,KU'Y<_\&AG[>US^S'^WUJW[&OQ#U-[/P[\9+3[+9P79*"T
M\0V8D>VR&^X98C<0$<%I# #]T5_3GXRM/&=]X:NK7X>Z_IFEZPZK]BO]9TB2
M_MHCN!8O!%<6[R KN  E3!(.2!M/XJ?$7_@ST^(7CK]J36_VN]%_X*AV?A7Q
M7J_CRX\76O\ PB_P.:W@TG4);QKQ3:JVN,T:1RD; 68@*,DT ?I__P %8O\
ME%E^TM_V;_XR_P#3'>5_.S_P:3?LW? []JW]M'XO?!C]H/X9Z1XI\.ZK\!=1
M@GL=6LDE\DR:GIL1EA9@6AF"2.%E0JZDY4@U_0/^U5^R%^VG^U1^Q=K?[)FN
M_MC^ =)OO&/A.[\/^-?&%G\%;IWO+:X0Q2O;6QUX):N\+,K%FF&6+*$X ^-?
M^"5O_!M/\<?^"2_[1UY^T7\#?^"C?A_7;G5?#4^@ZSHWB7X&RM;W-G+-!.=K
M0Z\CQR+);Q$."1@,"I!H _'+XT_#7]J[_@V2_P""O%EXC\#W=SJ&GZ/>&^\*
MZC=9CMO&/A>=RLEK.5&T.44Q2@#,4\0D0<1L?ZJ?V._VL_@Y^W)^S;X4_:D^
M ^O?;O#?BS3%N;</@36<P)6:UG4$[)H9%>-UR1N0X)!!/B7_  5\_P""1/PD
M_P""O/[-%C\&OB5XJC\,^+= ODO?"7C^ST074FE3MM6Y3[.9D,D$T:[6A,P^
M98GW$Q#/D?\ P1N_X(D_M*_\$?M5U?POX5_X*+V/COX<^(KQ;S6O FK?"22T
M\N[5 GVJSN5UB3[+,RJB.3'(KJB@IE590#]%:**Q_'=EX^U#PS/:?#+Q-H^D
M:RQ7[-?Z]H<NHVT8R-VZ"*YMG?(R!B5<'GGI0!_(U^WK_P K*7BO_LZ"P_\
M3I;U_7[7XG_%C_@T:^+WQA_:]UG]MSQ)_P %3[&#QMK/CIO%DCV7P)(M;>^^
MU?:46.-]<8^4C!5569CM4 D\D_L9\+-*^+FC^%A9_&OQSX=\0ZT)<G4?#'A:
M?1[8Q[%&W[//?7C;MX<[O-QAE&W*EF /YY/^#T[]C3QKX:_:6^'_ .W7HND3
M3^%_%'A>/PMK=W'&2EGJMI+/-")&QA?.MYL(.YM)?:OUE_X-TOC9X?\ CE_P
M1J^"&KZ)?Q2S>'O#3^&]4@1@6MKC3YY+;8X[$QI%(/595/>OJ3]HK]G/X*?M
M9_!K7/V?OVAOA]8^*/"/B.U\C5=(U!3M< AD=&4AHY$8*Z2(0Z,H92" :_/_
M /9)_P"")O[9_P#P2?\ &_B0_P#!+[]MOP[?_#GQ5?B\O_A7\</"MQ>6]K<!
M0@N(;W3YXG$NP!"PB0,J()!(44J >A_\',7QF\-_!K_@B]\87UR^BCNO%-G8
M^'=%MG8!KJYNKV$,BYZE8$GE(_NPMZ5^:7_!E+^QAXSN?BQ\3?V^O$.C36_A
M^R\.GP9X:N9XR%OKR>>WNKMX_7R4MX$)Z9NB!DAL?=/[5'_!$']KO_@JS\2?
M#6M?\%4/VUM!3X?>$;MKG2OA+\$O"]Q86<\[#:T\U[?3RRM*4'E[C&VU7<1>
M3O<M^A7P*^!7PB_9F^$FA? GX#^ K#PQX2\-6(M-%T338RL5O&"6)R26=V8L
M[NQ+N[,S$LQ) .MK^0+_ ((*_P#*P1\*?^R@:[_Z0:A7]:'QDT+XX>(?";Z=
M\!?B9X:\*:PZNHU3Q/X.GUN&/*$*RP0W]F=RMAOF=@<8QWK\@?V2?^#2#XL?
ML:_M7^%/VQ?AC_P5%T^\\5^$]<;5+9-9^!;26UV[JZ2QS*FN(Q21))%.UE(W
M9!! - '[5U\=?\%GO'WQ5\0_L^Z3^P=^S1J5I!\4_P!H[4I_"7AZ6\O)((].
MTE+=[C6=1EDC1WCBBLE>+S%5F62[A*AC@'ZR\'6GC*Q\-6MK\0=>TS4]816^
MVWVC:1)86TIW$J4@DN+AHP%V@@ROD@G@':/B?7/^"8?[>^O?\%(--_X*-7__
M  4B\&W%_H7AJZ\.>'_ 5W\!+A]'T_2KA@TL:;?$"S>>SJCM<;PS,BJ1Y8$0
M .)_:V_8=_X*I_M8_L)Z[^P%K_P9_90TCP9J'A6WT;18],\:>)"VC"T$9L9(
M ^F8S \,)4'@A-IX)K\6_P#@VL_;'\5_\$VO^"N"_L[_ !H,VB:/\0]1E\ ^
M-M-O7VC3]9CN&CLI'&<!X[Q3;DDX5+J4]J_JRU"U\8R^$I+/2M=TR'738[(M
M2N-)DEM%N=N/,-L)T<Q[N?+\X''&_P#BK\9OVPO^#1'QK^V1^U=XQ_:Z\5?\
M%(-(\-Z]XRUXZM=6'A?X'206UK/A1NBWZZSAB4#LY8EG9FXS@ 'Z^_M"?\D#
M\<?]B?J?_I+)7\J/_!I__P IM?AS_P!B_P"(O_33<U_2GJ'[.?[>>L?LAM^S
MUK?[;7@:^\7W6@7.C:G\2;KX+7)DNH)+9($N?L:ZZ$6\'[Z1I-YB=W3$*!"'
M_.#]BO\ X-+?CG^P'^T=H/[4_P"SG_P5=LK+Q7X=%PEF^I? 1;FWECG@>"6.
M2)M:PRM'(PX((.""" : /VIKQ?\ 9._:YTO]JWX@?&?2_!T5G-X=^%OQ/?P1
M9ZK:N6-]?6VFV5S?Y.2,17%VUOP!S W6O$/C%^Q'_P %B_B[\/\ 4?A];_\
M!9CPKX334[=H+C5_"'[-"6U_'&P*L(II==D,+$$XD0+(IY5E(!KL?^"0'_!,
MZ#_@E'^R5+^S'_PNB3Q_=7?BZ_U_4/$\N@'36N9KE8EP83<7!RJPH"QD.[K@
M4 ?4U?R9?\';/_*:/QA_V)_A_P#](4K^L/7(=:N-%O(/#>H6MIJ+VLBV%U?6
M;7$$,Y4A'DB62-I4#8)02(6 (#KG(_'K_@HC_P &J_Q=_P""E7[5FO\ [6WQ
ML_X*5Z+IFM:Y!:VRZ9X>^!<D=I:6]O"L,4:"777=CM7<S,Q)9F(P,* #P3_@
MXP_X(>^&M=_8Y\%?\%)OV0?AG8:9J/A7P'IB?%;PWH&G)!'>Z<MM&5U9(HE
M\V#.)R!\T)$AQY#%O;/^#3[_ (+-+^TI\)(/^";_ .T1XI#^/? 6D[OA]J5[
M-\^NZ%",?9<G[\]HN !U:W"G!\F1C^IG[,WP<^-/PT^"MC\'?VD/BSX4^(BZ
M=H-MI$5_I/@"71A=V\4)A<W4,VH7J2M(@3<$\M,[_EPP"_E5JG_!GW%\.OVP
MI?VK?V*_^"C>H_"4:;XK_MSP1HD7PR&IR>'FW[Q;K<G4X1<0J2R!7BYB(C?S
M/F9@#ZH_X.CO^4%'QS_[EG_U)])K\Z?^#)[P#X'^*/A']K+P!\2?"&F:_H>J
MVW@NWU+2-8LDN;:ZB8:^&22.0%64@D8(K]0_^"CO_!-W]L'_ (*1?L;7/[&W
MQ _;=\">&M+UXV+^,=8T+X(7;3:D]K=I=1B%)=?9;:,RPP,RGS&)C.' ;:/F
M[_@FO_P;H_MA_P#!*7Q!XKU[]D__ (*OZ%$OC2TM(/$%CXA_9Y6\@G^S-*T$
M@']N*R.GGS 8;!$IR#@$ 'V+_P $[/V<?"W_  2^_83U#X/>-]3MM \'?#_Q
M/XQU2RU#4;]7CL_#KZUJ%]:332!CC;921,Y/((.0#D5[-^S-\:$_:._9V\#?
MM!P>&)=%@\<^$]/U^TTJXG\V2U@O+=+B)';:OSB.1=PP,'([9KX$_;Q_X(J_
M\%-_^"BG@&3X1?'G_@MI#9>#;AU:_P#"?A#]GV/3;.^*D,OV@IK1EN%#!6$<
MDC1AE#!<@&OT5^%7@#3/A/\ "_PW\+-$DWV7AK0+/2K1_+V[HK>!(4.W)Q\J
M#C)Q0!^-_P#P>X?\F7?!S_LJ$_\ Z;IJ]@_X,]/^4/T7_94-;_\ 0+6O1/\
M@LK_ ,$5/CS_ ,%A],\.> _&7[</AOP-X0\)ZW=:GH^DZ3\'9KR[DEE3RT-S
M=2:TJR%(LJ/+BB!+NQ'W0O4_\$<_^"4'QZ_X))?"6Z_9WL_VQ_#7Q \"W?B:
M?6WM+OX2S:;J4,\T$<4B172:Q+&$)AB;#P.0=XSAAM /N&OX_/V$](O/A[_P
M<D^$?#'BU!9WFF_M175A=QS<;+@:M/#LY[E\*/<BO[ Z_*__ (*P_P#!L;\-
M/VZ/VAS^VM^RQ\>[OX/_ !6FO[?4-5NHK!KBPU"^@*F*]3RI(Y;.Z!1&:6,L
M&9 WEARTC 'ZH5\;?\$[;V/QO_P4#_;=^*NBW8N='F^*_AOPW:W$>"GVO2O"
M^GQ7D61U9)IBK#J#QVKCOAS^RC_P7\UWPA;?"WXZ_P#!3KX5Z3IHMEM]0\9^
M"/A2T_B.XBQARCW#QVD$S#@3"!MI.X*2.?K+]D[]E+X/_L7_  2TWX#_  4T
MR[CTNQEFNKW4=5O&NM0U>_G<R7-_>7#?-<7,TA9WD/4G "J%4 'XD_\ !\Y_
MS:[_ -SM_P"X"JOPD_X(G^!?^"EW_!LS\'/'GP6\!:38_&[PGI^OZKX<U:TL
MHH)_$876K]9=,NI0 9?,CC01-(3Y<D<8#*C29^U/^"PW_! GX]_\%C/&_A'7
M/BW^W]X;\)Z-X#AU"+PQHF@?!2:5D^V/ T\D\TNN$RN1;0+E5C4>7D*"37T-
M_P $GO\ @GY\>_\ @F?^S;H/[)'B7]JGPY\1?!/A8WQT%D^&,VD:G"+FZDNF
M1[C^UKF.1%EFE('DAMK!=V%% 'XF_P#!JO\ \%AM0_9 ^.<G_!-3]J'6)]/\
M$^-==:/PC<:OF,^&O$;L(VM) ^#%#<N A4\1W 4X'FRL/Z(?VL/^36?B7_V3
M_6?_ $AFK\S_ /@J1_P:>?![_@H'^UKJO[6/PB_:?;X17OB6)+CQ5HMOX"&K
M07VI@G??QD7UKY#R+L,BX;=(&DSN=J^L+K]B7_@I!J?[#]S^QWKW_!27P;J6
MI7GA6;PY=_$V_P#@3=/K$ME) 8#*P_X2$1-=^66'GE3DX8H7RQ /3O\ @F='
M'-_P38_9^AEC5D;X'>% RL,@@Z/:Y!%?ST_\'+/_  0_U?\ X)Y_&(?MW_LA
MZ%<V/PH\3:VD]_::,&C/@C6G?<JH4P8;663YH6&!%)^Z^7]R&_H)_P"">?[+
MO[2'[''[/WA?]F_XR_M.^'?B9HO@GPW;:)X;U*R^'$NAZ@MK;HD5NMQ(=3NH
MYO+A01@K%&S!5+$L&+>M_%[X1_#;X]_"_7O@O\8/!]GK_A?Q/I<NGZYH]_'N
MBNK>12K*>X/<,"&5@&4@@$ 'P)_P:R_%+QW\;_\ @ES)\8_BCK\FJ^)/%'Q6
M\2ZIKVJ2HJO=W<]RLDLS!0%!9V9C@ 9/2OT>KYI_X)4?\$\-+_X)@?LRWW[+
M/AKQQ)K^AP>.-7U;P]>7$6VXBL+J4/#!/V>6-1L9U 5R-P"YVCZ6H **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *_$'_@]Y_Y-9^!_P#V
M4#4?_2$5^WU?B#_P>\_\FL_ _P#[*!J/_I"* //_ /@TV_Y2F?M=_P#;Q_Z?
M)Z_?ZOP!_P"#3;_E*9^UW_V\?^GR>OW^H **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "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** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "OQ!_X/>?^36?@?\ ]E U'_TA%?M]7X@_\'O/
M_)K/P/\ ^R@:C_Z0B@#S_P#X--O^4IG[7?\ V\?^GR>OW^K\ ?\ @TV_Y2F?
MM=_]O'_I\GK]_J "BBB@ HJLVL:0FKIX??5+87\ELUQ'9&=?.:%656D"9W%0
MS*"V, L!W%6: "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "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@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *_$'_@]Y
M_P"36?@?_P!E U'_ -(17[?5^(/_  >\_P#)K/P/_P"R@:C_ .D(H \__P"#
M3;_E*9^UW_V\?^GR>OW^K\ ?^#3;_E*9^UW_ -O'_I\GK]_J "N>^+>M>,_#
M?PI\3^(OAQH*ZKXBL/#U[<Z#I;J2+R]2!V@A(!!(>0*O!'6NAK'^(GCWPK\*
MOA_KOQ0\=:D;+1/#>CW6J:S>"%Y/(M+>)III-B LVU$8X4$G& ": /Q\_P""
M4=]\"O\ @J5>^%?$GB[]H3XB7GQG_P"%,>(!\5]>M?B#JFF^(/"_B8:S8*K0
MQ0S1I90(&)@MXXQ;,B[7C=EE%?I+XG_9?^*WQT_9E\!? KXT?'SQ-I#V_ARQ
MB^*&H^#-6?3]4\17<5I&DL*W\)$EM!)/YDDK0[)) JH'5&D5_A;_ (*H?\$X
M-*\3?MGG]M3]@3XHI\%_C+H7P6USQTOC/PR8X['Q3/97=EB'4X_]5-%-#-(K
M2D$-E3*)54+7W/\ \$[_ -H?Q1^W3_P3V^&7[17Q1\+OH6K_ !!\#6]YK=CI
ML\UJ$ED0I)+;NKB6*.0@RQD/N5)$PQ(W4 ?,W_!-+]FGXT?L@_\ !4/XX? +
MX3?&/QOXL_9QT[P/I%Y;V7C?Q'/JW_".^+KB19&TVUN+AF<XLLW$J@DJMU:>
M9DE&+_V;/&\'_!5;_@H=^TMI/Q=U75[GX5? '7[3P!X*\':=KUW8VMQK2B<Z
MMJEU]EDC::Y26-(8"S$0QAB@61F<\;\(?V([#_@G7_P7L\(Z%^Q?XC\06WP]
M^-_PT\2Z_P#%WP)>Z_<ZC;V-W92P"#5BUS(\BM-<W,42N[,P/GJK;7*KM?\
M!#;P=J/P+_;<_;S_ &=/%\;P:S%^T&WC*TCFX:?2=;2>YLYE_O@HN"PX#9!P
M>* .3^%W_!7#XC?LD?L0_MF:!\9=?G\8>,?V0/&=UH'A;7-?G:6XUS3K^<P>
M')-0DR&FF\QEBFD^](L08LTC,QL?M#^!OC/^QM_P1^T'_@IOX-^*_BG5?V@O
M"/AS0?'/C?Q!K?B6[FM_%7VJ2V?5=)N[4R>0+#R;F9(84C46_D0M%Y;*6/R3
M\;?V6_B+^U#^RI_P5K^.?PWTFYN[#Q)\7=,M_#[01[EU!?".H/=:B\0',J^5
M(X!7(+)@9((K[A_X*H_&CPOXN_X-J-<^)'AJ87L'CCX-^&;7P_;VN9)+N?4G
MT^&&*-5Y=]TP^4#/RGC@T ??/P5^*GASXZ_!OPE\;O!V_P#LCQEX9L-<TKS,
M;OLUW;QW$6<<9V2+735Y;^PW\(M>_9__ &*/@]\!O%2XU3P3\+?#^@:D-P.+
MBSTVWMY.1P?FC/2O4J "L_Q7XK\.>!O#EWXM\6ZO#8:;80F6\O)SA(DZ;CCM
MS6A7E'[<_P#R:/X]_P"P"_\ Z&M '=VGC&ZU"UBO]-\-74]O/&LEO/&R[9$8
M95A[$$&I/^$EU?\ Z%"]_P"^EJ+X7?\ ),_#O_8"M/\ T2E;M &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__
M $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*
M%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A>_\ ?2UL44 8_P#PDNK_
M /0H7O\ WTM'_"2ZO_T*%[_WTM;%% &/_P )+J__ $*%[_WTM'_"2ZO_ -"A
M>_\ ?2UL44 8_P#PDNK_ /0H7O\ WTM'_"2ZO_T*%[_WTM;%% %'2M5O=0D=
M+K1)[4*N0TI&&]N*O444 %%%% !1110 5^(/_![S_P FL_ __LH&H_\ I"*_
M;ZOQ!_X/>?\ DUGX'_\ 90-1_P#2$4 >?_\ !IM_RE,_:[_[>/\ T^3U^_U?
M@#_P:;?\I3/VN_\ MX_]/D]?O]0 5F^,O!_AGXA>$-5\ ^-=&AU'1M<TV?3]
M6T^X!,=U;31M'+$V.=K(S*?8UI44 ?'X_P""+7[+P\4Z9IDGC'X@W'PUT[P5
M<^&Q\++_ .(FLW&GR6DMS;3+;&:2\,QL0+<(;%F:!U*J1L7RV]+_ &H_^"<O
M[,7[6NG^!+3Q[I'B'0+CX8S/)X U+X?>+;[P_<:&'CBC9(&L)8PJ;(8E"D':
M$ 7;DY]UHH \_P#@E^S'\(?@#<ZEK7@72]3NM;UJ."/7/%/B?Q!>:QJ^HQP[
MO)CFO;Z66=HH]\A2$.(XS(^Q%W'.-\9OV+?@C\;/B/;?&35D\1>'O&-OHKZ+
M)XK\$>*KW1=0N]+>02-8SS6<B&:$.-Z!\M$Q9HFC9F)]9HH Y;X0?!+X3_ +
MX7:9\%?@[X#T_0/"VCVS0:?HUE$?*169F<L6):1W=G=W<L\CNS,69B3Y5X*_
MX)F?LA^ =>T*^T+P5JTFB^$]>?7/!O@:_P#%-]<>'?#VI,[R?:K+3))3;0NC
MR2-$ A2W+DP+%DU[]10 4444 %>4?MS_ /)H_CW_ + +_P#H:UZO7E'[<_\
MR:/X]_[ +_\ H:T =U\+O^29^'?^P%:?^B4K=K"^%W_),_#O_8"M/_1*5NT
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 !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !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 !1110 4444 %?B#_P 'O/\ R:S\#_\ LH&H_P#I"*_;ZOQ!_P"#WG_DUGX'
M_P#90-1_](10!Y__ ,&FW_*4S]KO_MX_]/D]?O\ 5^ /_!IM_P I3/VN_P#M
MX_\ 3Y/7[_4 %%%% !1110 4444 %%%% !1110 5Y1^W/_R:/X]_[ +_ /H:
MUZO7E'[<_P#R:/X]_P"P"_\ Z&M '=?"[_DF?AW_ + 5I_Z)2MVL+X7?\DS\
M._\ 8"M/_1*5NT %%%% !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 4444 %%%% !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 4444 %%%%
M!1110 4444 %%%% !1110 4444 %?B#_ ,'O/_)K/P/_ .R@:C_Z0BOV^K\0
M?^#WG_DUGX'_ /90-1_](10!Y_\ \&FW_*4S]KO_ +>/_3Y/7[_5^ /_  :;
M?\I3/VN_^WC_ -/D]?O]0 4444 %%%% !1110 4444 %%%% !7E'[<__ ":/
MX]_[ +_^AK7J]>4?MS_\FC^/?^P"_P#Z&M '=?"[_DF?AW_L!6G_ *)2MVL+
MX7?\DS\._P#8"M/_ $2E;M !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !7X@_\'O/_)K/P/\ ^R@:C_Z0
MBOV^K\0?^#WG_DUGX'_]E U'_P!(10!Y_P#\&FW_ "E,_:[_ .WC_P!/D]?O
M]7X _P#!IM_RE,_:[_[>/_3Y/7[_ % !1110 4444 %%%% !1110 4444 %>
M4?MS_P#)H_CW_L O_P"AK7J]>4?MS_\ )H_CW_L O_Z&M '=?"[_ ))GX=_[
M 5I_Z)2MVL+X7?\ ),_#O_8"M/\ T2E;M !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !7X@_\'O/_ ":S
M\#_^R@:C_P"D(K]OJ_$'_@]Y_P"36?@?_P!E U'_ -(10!Y__P &FW_*4S]K
MO_MX_P#3Y/7[_5^ /_!IM_RE,_:[_P"WC_T^3U^_U !1110 4444 %%%% !1
M110 4444 %>4?MS_ /)H_CW_ + +_P#H:UZO7E'[<_\ R:/X]_[ +_\ H:T
M=U\+O^29^'?^P%:?^B4K=K"^%W_),_#O_8"M/_1*5NT %%%% !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 !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !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 %?B#
M_P 'O/\ R:S\#_\ LH&H_P#I"*_;ZOQ!_P"#WG_DUGX'_P#90-1_](10!Y__
M ,&FW_*4S]KO_MX_]/D]?O\ 5^ /_!IM_P I3/VN_P#MX_\ 3Y/7[_4 %%%%
M !159M8TA-73P^^J6POY+9KB.R,Z^<T*LJM($SN*AF4%L8!8#N*LT %%%% !
M1110 4444 %>4?MS_P#)H_CW_L O_P"AK7J]>4?MS_\ )H_CW_L O_Z&M '=
M?"[_ ))GX=_[ 5I_Z)2MVL+X7?\ ),_#O_8"M/\ T2E;M !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%1W=W:V%K)?7US'#!#&7F
MFE<*J*!DL2>  .232;25V&Q)17EJ_MK_ +*SZ_\ \(T/C5I/VGS-GF$2"#/_
M %WV>5CWW8]Z]/MKFWO+>.\L[A)8I4#Q2QN&5U(R&!'!!'.:\_ 9QE.:N2P6
M(A5Y=)<DXRL^SY6[?,PHXK#8F_LIJ5M[-.WW#Z***]$W"BBB@ K\0?\ @]Y_
MY-9^!_\ V4#4?_2$5^WU?B#_ ,'O/_)K/P/_ .R@:C_Z0B@#S_\ X--O^4IG
M[7?_ &\?^GR>OW^K\ ?^#3;_ )2F?M=_]O'_ *?)Z_?Z@ KGOBWK7C/PW\*?
M$_B+X<:"NJ^(K#P]>W.@Z6ZDB\O4@=H(2 02'D"KP1UKH:Q_B)X]\*_"KX?Z
M[\4/'6I&RT3PWH]UJFLW@A>3R+2WB:::38@+-M1&.%!)Q@ F@#\?/^"4=]\"
MO^"I5[X5\2>+OVA/B)>?&?\ X4QX@'Q7UZU^(.J:;X@\+^)AK-@JM#%#-&EE
M @8F"WCC%LR+M>-V645^@WQ3_9/_ &A_VC?V?_AA^SO\3?VCO%/A?3[?PO ?
MC#XD\!ZU]@US7]0@M;:,6D5VJEK>WGF:YFGDBVR,($B!"RN:^-?^"J'_  3@
MTKQ-^V>?VU/V!/BBGP7^,NA?!;7/'2^,_#)CCL?%,]E=V6(=3C_U4T4T,TBM
M*00V5,HE50M?9'['/[?MM\5_^":'PR_;F_:&T;_A'M0\8>$K&ZO=&TVSEDEO
MM2G/E1P6%N-TLSW,H!@A7<["5 "W6@#Y._9I^"WQF_X)C?\ !;#PA^Q=\%OV
MAO'OCGX(_%[X7:QXAU#PAX_\12ZO-X1O+!PHNK>>7YXXI)&AB&<;C.P?>4C9
M<;_@L3^WS^R'XC_;@T;]@K]JC]NGXU_L\^$O#.BP:C/XS^$EU<Z6VL:_>?ZJ
MTN=0CMIPEK;6F'9=FQI+Y2[I]F.?MKX _"(^!_BAKG[;G[5=WIND_$KXD)8>
M'-)TNYU"-X_"^C"9FL/#UO+G$T[SRO/</&2)KF0A-T4,)'KWQ8^$OP>_:)^'
MNL?"'XR>!=$\7>&]3C:TUG0]9M([JWDRN=K(P.UP&# C#*2&!!P: /D3Q_XR
M^'W_  1A_P""/_Q$_:/^%W[1'COXU6>DZ/)X@\->,/BGX\_X2*XU6]OS;VNG
M*+M%1#9F:6VPL052K.P)9RQ\9_:'\#?&?]C;_@C]H/\ P4W\&_%?Q3JO[07A
M'PYH/CGQOX@UOQ+=S6_BK[5);/JNDW=J9/(%AY-S,D,*1J+?R(6B\ME+'PWQ
MW^Q?\3'_ .#;#]J_]F'X9:GJ6O\ A'P;\8O$EY\%7EG-RUQX0T?7K2Z98VY,
MRA[34]K+PY&Y<AAGZ=_X*H_&CPOXN_X-J-<^)'AJ87L'CCX-^&;7P_;VN9)+
MN?4GT^&&*-5Y=]TP^4#/RGC@T ??/P5^*GASXZ_!OPE\;O!V_P#LCQEX9L-<
MTKS,;OLUW;QW$6<<9V2+735Y;^PW\(M>_9__ &*/@]\!O%2XU3P3\+?#^@:D
M-P.+BSTVWMY.1P?FC/2O4J "O*/VY_\ DT?Q[_V 7_\ 0UKU>O*/VY_^31_'
MO_8!?_T-: .Z^%W_ "3/P[_V K3_ -$I6[7&?#7P;I4_PYT"=[F[!?1+5B%N
MF R85K;_ .$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ M
MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P#
MMJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8H
MK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'
MTC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?
M2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO
M?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]
M_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:
M@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ
M/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_
M (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC
M_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/
M^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_
M  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?
M_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -B
MBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^
M$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X
M0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_G
MYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\
MGYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ M
MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P#
MMJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8H
MK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'
MTC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?
M2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO
M?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]
M_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:
M@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ
M/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_
M (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC
M_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/
M^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_
M  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?
M_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -B
MBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^
M$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X
M0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_G
MYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\
MGYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ M
MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P#
MMJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8H
MK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'
MTC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?
M2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO
M?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]
M_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:
M@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ
M/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_
M (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC
M_GYO?_ MJ -BOD[_ (*O?$;Q'X;^'GAOX?Z/=R06?B&\N9-3:)B/-2W$6V)O
M52TH8CN8Q7T-XOA^'_@'P]<^*_&GBA]-TZT3=<7=WJ#*B^@]R>@ R2> ":^;
M_B3\,O&O[>EE"/ GAX^&_!VF/)/I'B7Q,)6N=5FV%5\F$$&.W8XR[9) ! )!
M2OS7Q1JU\=POB,ER^3>,KQ2A".LG'FCSM](P<4XN4FHZVNV['@\02G6R^>$H
M.]6:T2WM=7OV5KJ[LNA\+5]]?\$I_B-XC\3_  PU_P ":U=R3VWAV_@.FO*Q
M)CBG5R8@?[JM&6 [>8?:OG]?^";'[6!U_P#L<^#].%OYFW^U3K<'V?'][&[S
M<?\ ;//M7V]^RI^SAI'[,_PS7P?;:@+[4KR?[5K&H*FU99BH 5 >0B@ #/7D
M\;L#\&\$N">,\KXS6.Q6'J4*,(S4^>+ASW5E%)V<O>M*ZNER[WM?X_A/*<TP
M^:^VJ0E""33NFKW6B5]]=>VAZ91117]AGZ<%%%% !7X@_P#![S_R:S\#_P#L
MH&H_^D(K]OJ_$'_@]Y_Y-9^!_P#V4#4?_2$4 >?_ /!IM_RE,_:[_P"WC_T^
M3U^_U?@#_P &FW_*4S]KO_MX_P#3Y/7[_4 %9OC+P?X9^(7A#5? /C71H=1T
M;7--GT_5M/N 3'=6TT;1RQ-CG:R,RGV-:5% 'Q^/^"+7[+P\4Z9IDGC'X@W'
MPUT[P5<^&Q\++_XB:S<:?):2W-M,ML9I+PS&Q MPAL69H'4JI&Q?+;O_ -KC
M_@EO^PS^W/X<\*^"_P!IKX,W6MZ'X)B\OPKH.E^,=7T:PTX>6(U*6VFW=O$6
M6,>6K,I9$)52%)!^@:* /D?]F_\ X(4_\$KOV2?C;H?[1?P$_9>?2/&/AIYW
MT/5[WQWKNI"T>:"2"1EAO;Z:$L8Y74,4)7=E2" 1L7G_  1^_8IF_: \7_M&
M:7I7CO1M6^(%\;[QWHWAOXJ:YI>D>(;DC#2WEE:7<<5QN&=T; QMN;<AW-GZ
M@HH H:!X5\,>%/#%GX*\+^'+#3=&TZQCLM/TFPM$AMK:V1 B0QQ( J1J@"A
M    !BO$/!7_  3,_9#\ Z]H5]H7@K5I-%\)Z\^N>#? U_XIOKCP[X>U)G>3
M[59:9)*;:%T>21H@$*6Y<F!8LFO?J* "BBB@ KRC]N?_ )-'\>_]@%__ $-:
M]7KRC]N?_DT?Q[_V 7_]#6@#NOA=_P DS\._]@*T_P#1*5NUA?"[_DF?AW_L
M!6G_ *)2MV@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ 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 **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHJ#5-5T
MS0].GUC6M1@M+2VB,ES=7,HCCB0#)9F8@*!ZFIE*,(N4G9(3:2NR>O-OC/\
MM+>%OA;J4/@;P_I5SXG\97XQIOA72/FG8D9#S-R((^Y9NV2 0"1Q^I?&KXJ?
MM*:A-X1_9>B.D^'8Y##JGQ)U*V.PX.&2QB;!E?MO. .?N_*Q]"^#'P ^'OP/
MTV:/PO:376IWS;]7U_4I?.O=0D)R6DE/.,\[1@#KC))/Q\LXS'B&3I9(^6CL
M\1)7B^ZH1?\ $?\ T\?[I=/:6<3S'BJ^-?+A-(]9O;_MQ?:]7[O^+8XGPA^S
M7XK^)7B&V^*'[6>KV^M:A _FZ3X/M"?[)TG/3*'_ (^)?5FR.WS  CVQ$2-0
MB*%51@ #  I:Y3XU_$NT^$WPWU'QC.R&>./RM/B?_EK<-PBX[C/S'_94UWTL
M)DO"&5U\7)VC%.=6I)\TY\JNY3D]9.VRV7PQ25D>EEF5\U>.'P\>:=1I7>KD
MWIJ_Z26UD<LG[26DM^T>WP:W1?8OLOD"ZSS_ &A]XQY]-OR>N\8KU2OS976]
M676QXC74)?MXNOM(NMWS^=NW;\^N[G/K7W[\&/B19_%?X<:;XSMRHFGBV7T2
M_P#+*X7B1?89Y'^R0>]?E/@]XHU^-L=CL'CG:HINI27_ $Z;MR>?LW;7KS>1
M^D<<<(4\@P^'KX?6+2A-_P!]*_-_V]KZ6\SJ:***_>3\Y"BBB@ K\0?^#WG_
M )-9^!__ &4#4?\ TA%?M]7X@_\ ![S_ ,FL_ __ +*!J/\ Z0B@#S__ (--
MO^4IG[7?_;Q_Z?)Z_?ZOP!_X--O^4IG[7?\ V\?^GR>OW^H **** "BBB@ H
MHHH **** "BBB@ KRC]N?_DT?Q[_ -@%_P#T-:]7KRC]N?\ Y-'\>_\ 8!?_
M -#6@#NOA=_R3/P[_P!@*T_]$I6[6%\+O^29^'?^P%:?^B4K=H **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "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 **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HI))$B1I97"JH)9F. !ZFO$?%?[2/B_P"*
M7B"Y^&/[).E6^K7D#^5J_C6]&=*TH]]K8/VF7T5<KT/S#./(S;.\!DU.+KMN
M<W:$(KFG-]H16K\WI&*UDTM3FQ.+HX6*Y]WLEJV^R7])=;([?XT?M!?#_P""
M%C OB*YFO=6OSLTCP[I<?G7U_(3@+'&.<9XW' [<G /G^E_!#XH_M':C!XQ_
M:FG_ +-T&.03:5\-M-N3Y*XY5[Z5<&9_]@<#VRRUV/P7_9J\)_"B_F\9ZQJ5
MSXE\87XSJGBO6/GN)">J1 Y$,?8*O; ).!CI?'WQ7^'WPRM1<^,_$L%J[C,-
MJ"7GF_W(URS<\9QCU(KYK%82ICZ#QO$U2-'#1U]CS)4UV=>>BJ/^XOW2>G[Q
MI2,</EN.S>LH58.5]J<=;_XK?$_+X5Y[FWINFZ=HUA#I6D6$-K:V\8CM[:VB
M"1Q(!@*JK@* .PJCXO\ '/A#P%IAUCQEXBM=.MQG:]S* 7([*O5S[*":X#_A
M,_CU\5_W?P]\*KX0TB3IKGB*(/=R+_>BMAPIZ??R".AK6\(?LZ^!M!U,>)_%
M,EUXGUPX+:KK\GGLI_Z9H?D0#M@$CUKJCGV9YI%0R3"^Y_S]K)TZ=O[D+*I4
M\M(0:VJ'U:RS!8%?[=5LU_R[IVE+T<O@A]\I+K$RO^%O?%'XH?Z/\$? 1M;!
M^!XG\3(T,)']Z&$?/)['IGJ*^9_VF;S4X_B))X<UCX@WWB.\TY E_>W&$A6X
M/+1PQ+\L:J, XZL&]*^ZP !@"O.+W]DG]GW4KR;4;_P$TL\\K232OK%X6=V.
M2Q/G=23FO@/$7PVXJXMR>&&H8V-2JY7FZLI4Z<8K:-.E3C*.KU<JCE-)64VF
MSZ7A?BK)\EQTJM2@XP2M%02E)M[N4Y-/;I&T7>_+HCX6KW7]AKXK_P#"+>.9
MOASJMSMLM=^:UW'B.[4<?3>H*^Y5!7M__#'G[.?_ $3O_P J]Y_\>J6P_9*_
M9^TN^AU/3_ ;0W%O*LL$J:Q>!D=3E6'[[J" :_-^$? _Q$X2XCP^:T,3A[TY
M7:YZOO1>DH_P?M1;7D]>A]5G7B#PQG65U<'4I5;36CY8:/=/X^CLST>BBBOZ
MY/Q0**** "OQ!_X/>?\ DUGX'_\ 90-1_P#2$5^WU?B#_P 'O/\ R:S\#_\
MLH&H_P#I"* //_\ @TV_Y2F?M=_]O'_I\GK]_J_ '_@TV_Y2F?M=_P#;Q_Z?
M)Z_?Z@ HHHH **** "BBB@ HHHH **** "O*/VY_^31_'O\ V 7_ /0UKU>O
M*/VY_P#DT?Q[_P!@%_\ T-: .Z^%W_),_#O_ & K3_T2E;M87PN_Y)GX=_[
M5I_Z)2MV@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "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 **** "BBB@ HHHH *Y?XK_&/X>?!3PTWBGXA^
M(([.$DK;0*-\]U)VCBC'S.W3IP,Y) YKB/B9^T[<MXGE^$7[/'AQ?%_C!1MN
MVCDQIVCCIONIAQD'_EFIR2",@X!XOPWI'PZ^'7C@>,_B;XEN_BG\4Y1^ZBTR
MV\^/33G_ %5M&/W=NJD\L?GZD!<D5\#GG&V&P_-1P-2%T^656;_=0E_+%+WJ
MU7M2IZWTG*#LGST%C\UKO#Y93]I)?%+[$>]WU:ZJZ2^TT:D?@GXU?M<.+_XL
M)>^"/A\[!K?PC;3%-2U>/L;R0<PH?^>0YYP>0KUW^J?$/X)_L_Z-:^ M%BM[
M=K=!'8>&M!MO-N&/H(TZ$]=SD;CDY)K+_P"$6_: ^+/S^-?$2>"M'DZZ3H4H
MEOI%/:2XZ(?]SZ$5U_@#X0_#SX90%?"'AN&">0?O[Z7,EQ,3R2TC98Y/.,X]
MJ\_*<)G-:I*O@*3C.HK3Q6*7[R2[4Z"Y7"':$G247JZ<FVW[&&R?)\HDZF+J
MNM6>Z@U]SJ6<4O[M-27FGJ<AYW[17Q:X@BB\ :+(/OR@7&IS+].%AR/7#*?6
MNB\!? CX=_#^[.LV.F2:AJSG=-K>KRFXNI&_O;V^Z?\ = KLJ*^GP7"N7T<3
M'%XR4L376JG5:ERO_IW!)4Z?_;D8MK=LVKYSB9TG1H)4J;WC#2_^*5W*7_;S
M:[)!1117TYY(4444 %%%% !1110 4444 %?B#_P>\_\ )K/P/_[*!J/_ *0B
MOV^K\0?^#WG_ )-9^!__ &4#4?\ TA% 'G__  :;?\I3/VN_^WC_ -/D]?O]
M7X _\&FW_*4S]KO_ +>/_3Y/7[_4 %%%% !1110 4444 %%%% !1110 5Y1^
MW/\ \FC^/?\ L O_ .AK7J]>4?MS_P#)H_CW_L O_P"AK0!W7PN_Y)GX=_[
M5I_Z)2MVL+X7?\DS\._]@*T_]$I6[0 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !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 !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !14&I:GINC6
M,FIZOJ$%K;0KNEN+B4(B#U+'@5XYXT_;,\,OKR> O@MH%QXM\07.5MHK9"L
M/0L3]YE!ZM\J8ZN.M>#GG$^1<.PB\?7492TC!7E.;[0A&\Y.^FB9V8; 8K%Q
M<J<?=6\FU&*]9.T5Y7>O0]4\;^._"'PW\.3^+?'/B"WTW3[8?O+BY? )[*H'
M+L>@5023P :^6_''[1/Q<_:BUN7P+\(= US2?#!.VY;3E$>J:DA.,-*<I8PM
M@C)R_3((8@>GZ9^R]K/Q+UF'QW^TOXG?5[U,M:Z#8R&.SL5/\ (P2<8!*X)V
M\L_6O7O#_AOP_P"%-,31O#.BVMA:Q_<M[2!8U'O@#D^_4U\9C\!QIQJ_9RD\
MOP3WCI+$5%_>LW"E%_RWG+I-6;B76P>4TG:O-UO[L+P@_P#%/2<EWC!0_P ;
M6AXQ\-/V5M?L?"\7A;Q%K$'AK0 ,OX7\)L4-P2.3=739DG8CAN2/0@8KUSP9
M\/\ P7\/-,&D>"_#=KI\'&\01_-(1W=CEG/NQ)K8HKZO(^$,AX?Y98:E>HER
M\\O>FEV3>D(_W(*,%TB@KYEB:U!8>-H4EM""48+_ +=6[\W=^84445],< 44
M44 %%%% !1110 4444 %%%% !1110 5^(/\ P>\_\FL_ _\ [*!J/_I"*_;Z
MOQ!_X/>?^36?@?\ ]E U'_TA% 'G_P#P:;?\I3/VN_\ MX_]/D]?O]7X _\
M!IM_RE,_:[_[>/\ T^3U^_U !1110 4444 %%%% !1110 4444 %>4?MS_\
M)H_CW_L O_Z&M>KUY1^W/_R:/X]_[ +_ /H:T =U\+O^29^'?^P%:?\ HE*W
M:POA=_R3/P[_ -@*T_\ 1*5NT %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%8GC?XC>!_AQIW]J>-O$MKI\1
M!,:S/EY,=D099S] :X;_ (69\9?BI^Y^$7@<:)IC]/$GB>,JS+_>AMQRWJ&;
M*GN!7S^9<395EN(^JW=6ONJ5-<]3U<5\"_O3<8_WCT\)E.,Q=+VUE"G_ #R?
M+'Y-[ORBF_(]%\2>*?#G@_2WUKQ3KEKI]K']Z>[F"+GT&>I]AR:\QU_]H[7?
M$&EW.I?"7PK&NE6R%KKQCXHD-GIL"#JXW8:0?3!![&N:^(T7P:^!]_::I\6-
M4U/XB^.K\XT;0Y%\^>XD/00VJY2&/(^\P(&#MR>*MZ!^S]\0_CMJEMXX_:NN
M(HM.MY!+HWPWTR;_ $&TQ]UKIU_X^)!Z?='/8E!\1F&<\6YSBI8#!I49_:A!
MJ4X)[.O6M*G2NO\ EW3C5JR6L))>\L*^99/E]1T,'#ZU76[E>-*/FTO>?DFX
MM]8-:GF%GX2^+?[7^N!M!\6W]SX>AF(NO&VKVAALV(.&33K+C>>J^;)P><A6
M S]*?!GX#?#CX$Z"=&\#:01/. =0U6[;S+N]<?Q2R'D]\*,*,G %==9V=II]
MI'86%K'!!#&$AAA0*D:@8"@#@ #C J2O=X7X"RGA[$/'5/WV+G\565V_2/,Y
M22Z7<I3:^*;5DN.K5QN,J*KC*G/);*RC"'E3@O=@O17?5L****^Z **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ K\0?^#WG_DUGX'_]E U'_P!(
M17[?5^(/_![S_P FL_ __LH&H_\ I"* //\ _@TV_P"4IG[7?_;Q_P"GR>OW
M^K\ ?^#3;_E*9^UW_P!O'_I\GK]_J "BBB@ HHHH **** "BBB@ HHHH *\H
M_;G_ .31_'O_ & 7_P#0UKU>O*/VY_\ DT?Q[_V 7_\ 0UH [KX7?\DS\._]
M@*T_]$I6[6%\+O\ DF?AW_L!6G_HE*W: "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "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@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HKB_'?Q\^'?@2^&@R7\NJ:RYVPZ)H
ML)N;EV_NE5X0_P"\1^-<_P#8/VB?BUSJ=[%X!T63_EWLW$^IRK[R?=AR,=/F
M!Z@U\QC.*\!3Q$L)@HRQ->.CA2L^5_\ 3R;:IT_2<E*VT6>O0R;$SI*MB&J5
M-[2GI?\ PQ5Y2_[=37=HZWX@?&/X=_#-%C\5>(8TNI,>1IUN#+<S$] L:Y;G
MU.![UR7_  D'[0?Q:^7PMHB>!M&DZ:EK$0FU&5?5(/NQ?\".>X-=1\/_ ()?
M#GX;.U[X?T,2ZA(29]6OW,]U*3U)D;D9[A<#VI/B]\;OAU\#_#ZZ]X]UL1-,
MVRPT^W7S+J]D[1PQ#ESD@9X R,D5YF,PV;XG#2Q.>8M87#Q5W"E)QT_OXAJ,
MO_!4:3OIS2'5S')\JIN="'.U_P O*MK+S5.[C_X&YW[)E#PA\!/AQX%NG\7:
MUYNLZNJ^9<Z_XAN//E7')8%OEC YY ! [UQ'B+]HCQY\:=;N?AW^R180W*02
M&'5_B!J$6=.T\]U@!'^DRCMC*]#\RG(JV_PU^,G[5LZ:S\=UNO"/@<L'L_ =
ME<%+O4%ZAKZ5<%0>#Y2X([[2NX^X>'?#>@>$=$MO#?A?1K;3["TC$=M9VD(C
MCC7T ''^-<N6Y=6Q^']AE=)X'!/5R2Y:];NU?WJ:EUJ3O6ET4':3^<Q>/S7/
MJOM*LY1AW?Q-=HK[$>VE^RCN<5\%?V</!7P<DN/$/VFYUWQ1J/.K^*M8;S+N
MZ8]0"<^6GHB]@,EL UZ%117V^7Y;@<IPL<-A*:A!=%W>[;W;;U;;;;U;;-J%
M"CAJ:ITHV2_KYON]V%%%%=IJ%%%% !1110 4444 %%%% !1110 445\7_P#!
M7K]K+]H#]E[_ (5[_P *+\?_ -A_VY_:W]J?\2JTN?/\G[%Y7_'Q%)MQYLGW
M<9W<YP,>[PSP]C>*L[I97A)1C4J<UG-M1]V+F[M*3VB[:/6WJ>!Q1Q'@>$LB
MK9KC(RE3I\MU!)R]Z48*R;BMY*]VM+^A]H45^+W_  ]D_P""@/\ T7W_ ,M7
M2O\ Y%K[1_X)"_M9?M ?M0_\+"_X7IX__MS^P_[)_LO_ (E5I;>1YWVWS?\
MCWBCW9\J/[V<;>,9.?N^)O!WB;A7)*N:8NM1E3I\MU"4W+WI*"LG3BMY*^JT
MOZ'P/"_C1PMQ;GM'*L'1K1J5.:SG&"C[L93=VJDGM%VLGK;U/M"BBBOR<_70
MHHHH *_$'_@]Y_Y-9^!__90-1_\ 2$5^WU?B#_P>\_\ )K/P/_[*!J/_ *0B
M@#S_ /X--O\ E*9^UW_V\?\ I\GK]_J_ '_@TV_Y2F?M=_\ ;Q_Z?)Z_?Z@
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
MYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\
MGYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ M
MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P#
MMJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8H
MK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'
MTC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?
M2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO
M?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]
M_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:
M@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ
M/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_
M (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC
M_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/
M^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_
M  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?
M_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -B
MBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^
M$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X
M0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_G
MYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ MJ -BBL?_ (0?2/\
MGYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P# MJ/^$'TC_GYO?_ M
MJ -BBL?_ (0?2/\ GYO?_ MJ/^$'TC_GYO?_  +:@#8HK'_X0?2/^?F]_P#
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
MM;6_T_4?AA%XGG\11V^TQ0W;3WL$+P.X:2>%H76X=L/^[+1M]HT4 ?&WP/\
MV%?^"G_A_P",OACQ=^U'_P %C[CXD>"-!U+[=J/@/1?@5I?A@ZM+'&_V=);Z
MTNGE6%)C'*T0!641[&^5C78^)/V'?B-\-/VM_&?[9'[&GQ'\->&M=^*.A6.G
M_$OP]XP\.W&H:9JEU8JT=CJT0MKFWDBN8HI)(G3<4G0KDQ.OF-],44 ?//[.
MO_!-KX%?!+]E;QI^R_XO$OC:'XJZCK6J_%W7=8@6*;Q7JFK;OM]S(D9Q"&#!
M(T0_NTCC 9F!<^53_P#!*3XG_$#]FSP?_P $^OC[^T;IGB?X">"[W31_9D?A
MB6#7_$VDZ;.DVFZ1J-T;EH!#$8;=99885>X6W7 @)<M]MT4 -BBB@B6&&-41
M%"HBC 4#H .PIU%% !7E'[<__)H_CW_L O\ ^AK7J]>4?MS_ /)H_CW_ + +
M_P#H:T =U\+O^29^'?\ L!6G_HE*W:POA=_R3/P[_P!@*T_]$I6[0 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 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !17SW^U_^T)JO@/Q;H7A+P=>[;G3[J/4M3"M
M@.!_JX&QV8;BP]"M>O)\7OA['X#LOB-JOB:UL=,O[59H);J8*3D9* =6<'(*
M@$Y!KX[ <<\/X_.\?ED:JC/!\KFY-*-FM6F^D'[LK[/0]S$\/9GALOPV+<&U
M7ORI)MZ;:?WEJNZ.FJKK.N:-X<TZ35]?U6WLK6(9EN+J98T7ZECBO-C\8_B7
M\3C]F^!O@%HK%S@>*/$JM!;$?WHHOOR^QZ9ZBK.C?LX:3J.H1^)/C%XEO/&.
MIH=R+J'R6<!]([=?E ^N0>N!1_K-BLU]W(\.ZR_Y^SO3H^JDTYU/+V<7![.<
M0_LFC@]<PJ\C_DC[U3YJ_+#_ +>:DOY60W/[0.M>-[A])^ ?@2XUY@Q1]=OP
MUMIT)Z$[VPTN.ZK@^A-%K^S[J_C6Y35OCYXZN/$#JP=-$LB;;3H3V&Q<-(1_
M>;!/<&O3;:VM[.W2UM+=(HHU"QQQH%50.@ ' %/IKA5YBU4SRN\2_P#GW;DH
M+_N$F^?_ +BRJ>5@><K"KER^FJ7]Z_-4?_;]ER_]N*/G<K:/HNC^'M.CTC0=
M+M[*UA&(K>UA6-$'LJ@ 59HJCXD\3>'O!VAW/B7Q5K5MI^GVD9>YO+N8)'&O
MJ2?RQW/%?5?N,)0Z0A%>222_!)+Y(\.I4;;G-^;;_-LO5Y7\7?VG--\(>(1\
M+/A9X>E\8>.9U/E:%I[CR[,?\]+N7[L*#()!.>1G:"&KEI_B-\9OVL)GTCX&
MM=>#_ I8I=^.;RW*7NI+G!6QB;!13_SU;!';:5*GU'X1?!/X=?!#P\?#W@#0
MQ!YK![Z^F;S+F]D[R32'EV))/H,G  XKY)YKF?$CY,H?L\/UQ#5W+_KQ!Z2_
MZ^S7L^L8U.GE?6<1C],+[L/YVM_\">_^)Z=E(XCX=_LQZEJ_BB#XN_M+^(8O
M%?BF,[]/L%0C2]%YR$MX3PS# _>,,D@'&1N/L=%%>_E638#)J#IX:.LG>4FW
M*<Y?S3D[N4O-O1:*R21VX;"T<+#EIK?=O5M]V]VPHHHKU#H"BBB@ HHHH **
MRO%_CKP3\/M);7O'OC#2]$L5^]>:MJ$=M$/^!2,!7B/B#_@I;^SF=4D\-?"&
MV\3_ !+UB,X.G> ?#LU[@]B96"Q[?]I6; KU<NR+.<V3E@\/.<5NU%\J]9?"
MOFT>1F6?Y+E#4<9B(0D]HN2YG_AC\4O1)GT'17S?_P +._X*._%_Y/A[\ ?"
M?PTTZ3[NI^.];:_O"G]]+>U $;_[,F10?V$?B+\3/W_[4/[8OCCQ3')S-H?A
MQTT/37']QXH,F0#IG<I[UZG^KN$PFN88VE3?\L'[:?\ Y3O3^4JD3R_]9,9C
M-,NP-6HOYIKV,/\ RI:I;SC2D>E_%C]K?]FCX'B1/BC\:] TNXBSYEA]M$UV
M/^W>+=*?^^:\T_X;Y\7_ !)_<?LN?LB^._&:N/W&M:O;KHFER9Z,MQ<Y+ =2
M-H/YUZ+\)_V./V7O@@8YOAI\$=!L+J+'EZC-:?:;L?\ ;><O)_X]7I=+ZWPI
M@?X&&GB)=ZLN2/\ X+I/F_\ *P?4^+L=_'Q-/#Q[48<\U_W$JKE_\H'S>?A_
M_P %)?C!SXU^-/@WX7:;+UL?!NCMJ=_L_NO/<D(C_P"U'TJUHO\ P32^ -YJ
M47B/XV:YXM^)VJQ-O6\\=>))KE$;OLA0I&%[!6# "OH:BE+B[.:<7#!N.'CV
MHQ5-_.:_>2_[>FRH\'9)4DIXU2Q,N]:3J*_=0?[N/_;L$8W@KX=^ /AMI0T+
MX>>"-(T*R&/]%T?3HK:/CN5C4 GWK9HHKYNK5JUJCG4DY2>[;NWZL^EI4J5"
MFJ=.*C%;)*R7HD%%%%0:!1110 4444 %%%% !1110 5^(/\ P>\_\FL_ _\
M[*!J/_I"*_;ZOQ!_X/>?^36?@?\ ]E U'_TA% 'G_P#P:;?\I3/VN_\ MX_]
M/D]?O]7X _\ !IM_RE,_:[_[>/\ T^3U^_U !1110 4444 %%%% !1110 44
M44 %>4?MS_\ )H_CW_L O_Z&M>KUY1^W/_R:/X]_[ +_ /H:T =U\+O^29^'
M?^P%:?\ HE*W:POA=_R3/P[_ -@*T_\ 1*5NT %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%<Q\0?C#\//AE$H\5^(8X[F3'D:= #+<S$] L:Y;GIDX'O7)CL?@<LPTL1BZ
ML:=..\I-12^;-L/AL1BZJI4(.4GLDKO\#IZYSXC_ !5\$?"O1)-8\7:Y!;L(
MF:WM#(/.N6 X5$ZG)XST&>2!7'?VY^T%\7/E\,Z0O@71)/\ F(:K$)M2F0]T
MA^[%_P ".1U!KPG]K/0O!'P]U&U\"Z'/=:IKDJB[U_7=5NC/<OD8CBW'A!U8
M@ '&SDU^6\;^)&,R+ARMF67X9\BLHU*UX*4I:15.FU[2?>\E3CRIR4I)6/L.
M'^%:&89K#"8FK[SU<86DTEOS2^&/;1R=]&D>6>,_%>J^.?%5_P"+];EW76H7
M332X/"Y/"CV P![ 5[)^P_%\.O$/BVZ\/>,_#]O>ZI! )]#FO29$15),B*C'
M8&!(<$#/WCGBO"*U/!/B[5? ?BW3_&.B2;;G3[I9HP3@.!U0^S#*GV)K^*N$
M^)%DO%]#-\;%5HJ?-44DI<RD_>E9_:5^:+_F29^]YUE3Q^25,%AWR/EM&SM9
MK9:=.C\FS]'  !@# '045F^#_%.E>-_"]AXMT27?:ZA:K-"3U (Y4^X.01V(
M-:5?Z6T*]'$T(UJ,E*$DFFMFFKIKR:/Y1J4YTJCA-6:=FNS6X45%>WMGIMG+
MJ&HW<5O;P1F2:>:0(D: 9+,QX  Y)->':U\>_B1\?]6N/ O[)]HD.FPRF'5_
MB/J4!-G;$?>2T0_\?$@]?NCCL0]>7F^>8+)U&-2\ZL](4X+FJ3?]V/9=9-J$
M=Y22.+$XRCA4E+63VBM6_1?FW9+JT=G\:?VD/!GP>GM_#,5I<Z_XJU$8TCPI
MHZ^9=W+'.&8#/E1\<NW8$@-@BN0\-_L[>.OC+KEM\1OVM]0@O/(D\[2/ -A(
M3ING'L9N?])E ZDY7J/F! ':_!;]G?P'\%()[_2Q<:IK^H'?K'B?5I/.O;YS
MR2SGE5S_  #C@9R>:[VO'IY'CL\FJ^>VY$[QP\7>FNSJO3VLEV:5.+VC)I3.
M6.$K8N2GC-ND%\*_Q/[3_P#)5V>XV&&&VA2WMX5CCC4+'&B@*J@8  '04ZBB
MOL$DE9'J!117.?$3XP?"GX2:?_:GQ0^(^B>'X"NY'U?4XH"X_P!D.P+GV )K
M:C0K8FJJ=&+E)[))MOT2U,J]>AAJ3JUI*,5NVTDO5O0Z.BOG2]_X*4?"CQ-=
MR:-^SK\-/''Q0O4<IYGA7PY*MG&__32YG"*B_P"T PJ+^V_^"FGQA_Y!/A#P
M)\(M-E_Y:ZM>-K>JQ@]"JQ 6^>Y#8/0>M?1KA'-J*YL<X89?]/I*$O\ P7K5
M?R@SYI\8Y/6?+@%/$O\ Z<P<X_\ @S2DOG41]'LRHI=V  &22>E>3?%+]NO]
MDOX/2M8^,?C?HSWRML_LO2)3?W1?H$,5L'96)X^8"N*7_@G99?$%A=?M2?M'
M^/OB.S8\_2IM5.F:4Y[XM+4C;GV?I7K/PL_9O^ GP2A6/X4_"+0-#D5=OVNR
MTY!<,/\ :F(,C_\  F-/ZMPE@?XM>IB)=J<53A_X,J*4O_**%]9XPQ_\&A3P
MT>]23JS_ /!=-QA_Y69Y+_PVA\?OBC^Y_9J_8G\67UO)Q'K_ (\N(]#LP.TJ
MI(6DF3V7!H_X4=_P4 ^+G[SXO_M4Z/X&L9.9=$^&.B%I2I[?;;K]Y&P'=01G
M\*^D**/]9*.$TR[!TJ7]Z4?;3^^KS03\XPC]X?ZLU\7KF6-JU?[L9>QA]U+E
MFUY3G(\#\'_\$U_V6-"U5?$_CGPWJGC[6ACS-9\?ZS+J<LG?YD<B(\^J5[?X
M?\-^'?">EQZ'X5T"RTRRA&(;/3[5(8D^B( !^ J[17DYCG6;YLT\97G4MLI2
M;2]%LEY))'KY;DF3Y.FL%AX4[[N,4F_5[M^;;84445YAZ@4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !7X@_P#![S_R:S\#_P#LH&H_^D(K]OJ_
M$'_@]Y_Y-9^!_P#V4#4?_2$4 >?_ /!IM_RE,_:[_P"WC_T^3U^_U?@#_P &
MFW_*4S]KO_MX_P#3Y/7[_4 %%%% !1110 4444 %%%% !1110 5Y1^W/_P F
MC^/?^P"__H:UZO7E'[<__)H_CW_L O\ ^AK0!W7PN_Y)GX=_[ 5I_P"B4K=K
M"^%W_),_#O\ V K3_P!$I6[0 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%<1XY_: \ >#-1_X1NTGN-;U
MMSMBT30X?M%P6]&V\)[[B#CG!KS\RS7+<GP_M\;5C3CM>3M=]$ENV^B5V^B.
MG"X/%XZK[/#P<GY+9=WV7=O1';UR'Q ^./P[^',ZZ7JVK-=ZI(<0:+ID?VB[
ME8] (U^[GMNP#7-?\([^T!\7/G\6ZVO@?19/^89H\HEU"5?1Y^D?_ 1GL177
M_#_X0_#WX8P%/"'AV*&>0?O[Z7,EQ,>Y:1LL<GG'3VKY[^U.(LZTRVA["D_^
M7M>+YFN\*":E\ZLJ=OY)(]/ZGE> UQ=3VD_Y*;5O^WJFJ_\  %*_\R.0V?M$
M?%SF1X_ &B2?PKB?5)D^OW8,_@RGUKI_A]\$/AW\-Y6U#1-'-QJ4G-QK&HR&
M>[E8]29&Z9[A< ^E=;177@>%<OP^)CB\5*6(Q"VJ56I.+_N124*?_<.,6^K9
MCB,XQ-6DZ%%*E2?V8:)_XGK*?_;S?E8****^F/)"BB@D 9)P!U- !7&_&3X\
M?#OX':-'J/C/4W>[NFV:7HUC'YMY?R9P$BB'+9.!DX4$C)&17#^-_P!ICQ#X
MW\2W'PG_ &5-$@\1:W"WEZIXDN&/]DZ-GC+R#_72#G")GI_%@K6[\&_V9O#_
M ,.M9D^(OC36[CQ9XVO%_P!.\3ZJH+Q_],[>/E8(QD@!><<9Q@#Y"MGV,S>K
M+"Y$E*SM*O+6E!K=1LU[6:[1:A%_'--<K\R6,JXF3IX.SMHYOX5Z?S/R6BZO
MH<C9_"'XN?M07D7B3]I%I?#WA)9%ET[X=:=<D/< '*O?RK@L>A\M<8X^Z00?
M<=%T31_#>E6^A>']*M[&RM8Q';6EI"L<<2#HJJH  ^E<I\4OVC_@+\$X6D^*
MWQ<T#0W5=PM;W44%PXZ_+""9'_X"IKR5O^"B>G_$!S:_LM_LY>/OB.S<0ZK;
MZ4=,TICV!N[H#;^*=*^PX;\/<QI4Y8NA1G4G.W/B*MES=DZDN6G&*^S"+C"/
M2*U/*K9WPYDE9TZ^(4J[W2]^J_\ MR"<[=E&-EV/H^HKV^LM-M)+_4;R*W@B
M4M+-/($1%'<D\ 5\Z?V+_P %-?C#_P A7Q;X#^$6FR_\LM*LVUS58QW#-)BW
MZ="N#^E2V7_!-CX5>)[N/6/VB_B9XX^*%XC[_+\4^(Y5LHW_ .F=M 45%_V2
M6%?4?V'E&#UQ^/A?^6C%UI?^!7A2^ZHR/[=SG&Z9?E\[?S5I*C'_ ,!M.K]]
M)>IO?$/_ (*(?LB_#S4/[!_X6Q;^(-7=BD&C^$('U2XE?^X/LX9 WLS"N<_X
M:D_;%^+!\O\ 9_\ V++[1[.7_5:_\5-373E0'H6LHR9F'?*M7MGP[^#WPH^$
M>G_V7\+_ (;Z'X?@*@.ND:9% 9/=BB@N?<DFNDH_M/AK!?[I@G5?\U>;:]5"
MG[-+TE.:[W#^R^)\=_O>.5*/\M""3]'4J^T;]8P@^UCYO_X9=_;(^+'[SX__
M +:=YHUI)_K= ^%>F+IRIZA;V0&9AVPRUT?P\_X)W?LB_#W4#K[?"BW\0ZN[
M;Y]8\7W#ZI/*_P#?/V@L@;W517MM%95N+<^J4G2I5?8TWO&E&-*+79JFH\W_
M &]=]V:T.$.'Z=55JM+VU1;2K2E5DGW3J.7+_P!NV79$5E8V6FVD=AIUG%;P
M1+MBA@C"(@] !P!4M%%?.-MN[/I4DE9!1112&%%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 5^(/_![S_P FL_ __LH&H_\
MI"*_;ZOQ!_X/>?\ DUGX'_\ 90-1_P#2$4 >?_\ !IM_RE,_:[_[>/\ T^3U
M^_U?@#_P:;?\I3/VN_\ MX_]/D]?O]0 4444 %%%% !1110 4444 %%%% !7
ME'[<_P#R:/X]_P"P"_\ Z&M>KUY1^W/_ ,FC^/?^P"__ *&M '=?"[_DF?AW
M_L!6G_HE*W:POA=_R3/P[_V K3_T2E;M !1110 4444 %%%% !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 !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%)))'#&TLKA54$LS'  '4DUYUX@
M_:.\/2:F_A;X5:'=^,=87AH=)Q]FA/K+<'Y%'N,_A7E9IG>59+3C+&55'FTB
MM7*3[0A&\IORBF_([,'E^,Q\FJ$&[;O9)=Y2=E%>;:1Z,2 ,DUP'B[]HKP7H
MVJ'PMX.MKKQ3KAX72]"3S=A]9)1\D8'?DD=Q64/A'\4OBE_I/QN\<FST]^?^
M$7\-.T4)']V:;[\GN!QGH17?^$?!'A'P'I:Z+X.\/6NG6PQE+:( N1W9NKGW
M8DUX?UOBG.],)3^J4G]NJE*JU_=I)\L/)U)-KK2/0]CD^7_QI^WG_+!V@O6=
MKR](I+M,X ?#_P"-_P 6/WWQ1\7CPSI,G/\ PCOAJ7]^Z_W9KG]"$RI'I7;^
M!OAIX%^&NG?V9X*\-6UBA $LD:9DEQW=SEG_ !)K=HKT,MX9RO+L1]::=7$;
M.K4?/4\TF]()_P M-0C_ '3FQ>;8O%4O8JT*?\D%RQ^:WD_.3;\PHHHKZ$\P
M***1W2-2[L%51DDG  H 6OG3_@K)_P H_O'_ /W"O_3K9UL_&'_@HK^RK\'[
MF;1'\>GQ-K4*L3H/@Z#^T;CY?O!FC/E1D=P[J17R%^VC^V=^TA^U-^S+XO'A
MC]GF+P[\-+9[,:UKFJW9FNI<7UOY2QLNV-6,WE;D D(7/('-?=<(93BL%Q;E
M53&N-#GKTG!5)*$ZEJD?X<)-3J>L(N*WDTDVOS#CWB_(/]6<QP-&K[6K*A6C
MRTTZG+>G)-S<4XP2W?,UIT9\!5Z/^R1<:!;?M">'W\4Z3XJU#3V^UI=:=X)M
MC-J=VK6DR^1"@(+;R0C\CY&>O.*^B_\ @DW_ ,I ? '_ '%?_35>5_:W'%'!
MXC@K,Z6+I^TI2P]93C>W-%TY*4;K575U?I<_B3A"C/$<69?2A+E<J]))VO9N
MI%7MI>W:ZN???@GQQ^VAJGANW\&?LR_L9^'OAGX?A7;::C\1=8._!ZNUG:_O
M1)W)D+;CU)YK6/[&'[0'Q2S-^TK^VQXKO;>3F30/ 5O'H=H!_P \V= TDR?[
MV#7TA17\)T>(WEM*-'*<+1PL(JRY(*4DEM:=3GE'_MQQ79):']^PX1PU:*6/
MQ%6NOY93Y*?I[.DJ<&O*2EZL\D^%O["?[)?P>F6_\'_!#1I+]6WG5-8B-_=%
M^I<2W)=E8GGY<5ZTJJBA$4  8  X I:*\C'9EF.9UO:XRM*I+O.3D_O;9[^
MRS+<KH^RP5&%*/:$5%?<D@HHHKB.X**** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *_$'_@]Y_Y-
M9^!__90-1_\ 2$5^WU?B#_P>\_\ )K/P/_[*!J/_ *0B@#S_ /X--O\ E*9^
MUW_V\?\ I\GK]_J_ '_@TV_Y2F?M=_\ ;Q_Z?)Z_?Z@ HHHH **** "BBB@
MHHHH **** "O*/VY_P#DT?Q[_P!@%_\ T-:]7KRC]N?_ )-'\>_]@%__ $-:
M .Z^%W_),_#O_8"M/_1*5NUA?"[_ ))GX=_[ 5I_Z)2MV@ 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@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HJMJVL:3H.GR:KKFIV]G:PC,M
MQ=3+&B#W9B *\XN_V@=7\:W+Z/\  +P//X@=7V2:Y>AK?3H#T)WMAI2/[JX)
M[$UXN:\093DTHPQ%3]Y+X:<4YU)?X813D_-I675I'?@\LQN.3E2C[JWDVHQ7
MK)V2]+W?1'IEY>6>GVLE]?W4<$,2[I9II JH/4D\ 5YOJG[1=OK]_)X=^"/A
M.Z\6WZ-MENX/W5A;GU>=N#ZX7.>QJ.S_ &?-3\9W4>M?'SQO<>(I58/'HMH3
M;Z= W;$:X,A']YL9'4&O2-+TG2]#L(]*T738+2UA7;#;VT(C1!Z!5  KR.;B
MO._A7U*B^KY:E=KT]ZE2^?M7W46=MLFR_?\ VB?SC37STG/Y<B\V>:Q? SQG
M\1I%U#X_>/)+Z D,OAG0V:WL$[X=A\\WU."/4BO1/#WAKP_X3TN/1?#.BVUA
M:1#Y+>UA"*/? ZGW/)J]17JY7P[E.45)5J,.:K+252;<ZDO)SE>5NT4U%=$D
M<>,S3&XV*A4E:"VC%*,5Z15E?SW?5L****]P\\**Y_XB_%?X9?"+1#XD^*'C
MW2= LAG;<:K?)"'(_A0,07;_ &5R3Z5X=<?\% =1^*4[Z3^QQ^SSXH^(K[BB
M^(KF$Z3HB'."?M-P 7(Y)0*"0.#S7LY=P_G&:4W5P])^S6\Y-0IKUJ2:@OFS
MQ<RXBR;*JJHXBLO:/:$4YU'Z4X*4W\HGTC7G7QI_:T_9T_9[B8?%CXL:5IMV
M%RFE)*9[V3/3;;Q!I#GIG;CGK7F'_#./[:'QW_?_ +2'[3J^$=)E.9/"/PH@
M-L2I_A>_F!E)QPR@%3S@UH6_PV_8;_81MH=5TWP/81^(KILV3&)M2US4)6/_
M "S:0M(-S=2"B9].*VQT>#N&\-+$YOC>=1W5*T8+R=:HDD^BY*=1-[,\FKF_
M$.+IN>&P\</3_P"?F(>OJJ4'=^DZE.7D9_\ PU3^U?\ ',_9OV6?V5KG2=-E
MXB\9?%24Z?;X[.EG&3/*IZA@<>HYKRGXD_#S4O'WB4^!/CG\>/%OQL\629\S
MX<>!9AI&@6?."MX\)^ZIXWLRN/X@,YKW'_A%OVD_VG?WWCZ^N?AKX+FZ:#IL
MV=8U",]IYL8MU(ZH!GDJP/6O5_AI\)_AW\'O#R^%_AQX4M=+M!@R"!,O,W]Z
M1SEI&]V)-?,_Z\<1YI[G#6&CEM#_ )_RAS8F2[T_:WE3O_.U3\J,EJ>?_JU7
MSK7,*TZT'_/[L'_AH1M%KSK>T?DSP?X,_P#!/GP[9P0ZA\7]*T:UM$99+?P+
MX3M?LVF0L.5-PX_>7L@_O2,>XRRFOI/3-+TS1-/ATC1M.@M+2WC$=O;6T0CC
MB4=%55   ]!4]%<>!RG"X&K.O>52M4UG5J2<ZM1]YSE>3\E?ECM%):'V&7Y7
M@,JHJGAJ:BO)?UIY+1=$@HHHKTST HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ K\0?^#WG_DUGX'_ /90-1_](17[?5^(/_![S_R:S\#_ /LH&H_^D(H
M\_\ ^#3;_E*9^UW_ -O'_I\GK]_J_ '_ (--O^4IG[7?_;Q_Z?)Z_?Z@ HHH
MH **** "BBB@ HHHH **** "O*/VY_\ DT?Q[_V 7_\ 0UKU>O*/VY_^31_'
MO_8!?_T-: .Z^%W_ "3/P[_V K3_ -$I6[6%\+O^29^'?^P%:?\ HE*W: "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HK*\7^.?"'@'2SK/C+Q%:Z=;
MC.'N),%SZ*O5S[*":X#_ (6S\5OBF?L_P4\#FPTY^/\ A*/$T9CC9?[T, ^:
M3U#'CL0*\#,^)<JRNNL-*3J5VKJE33G4?GRKX5_>GRP762/2PF58S&4_:I*-
M-;SD^6*^;W?DKR[(]&\1>)_#OA'2WUKQ1K=K86D?WI[N8(N?09ZGV')KSJ3X
MX>-_B0S6/P"\!O=VY)4^)]>5K>Q7G&8U^_-^&,=P:N^'?V<?#8U1/%/Q0UJ[
M\8ZRO*W.L8^SPG.<16X^1!['/MBO18XTB011(%50 JJ, #TKS?8<5YW_ !YK
M!T7]F#4Z[7]Z;3IT_-051]8U$SJ]ID^7_P ./MY]Y7C37I'24O63BN\6>:Z3
M^SG::WJ$?B/XV>*KKQ=J"-NBMKH>586Y_P!BW7Y3Z9;(/<5Z/:6EI86R65C;
M1PPQ*%BBB0*J =  . *DHKVLJR+*LEC+ZI22E+XI-N4YOO.<FYR?G)LX,9F.
M,Q[7MIW2V2LHQ_PQ5HKY)!117COQ<_;R_9B^#VI_\(QJ?Q"36_$#/Y</AGPI
M VI7\DG_ #S\N'(1_:1EKZ7 99F.:UO8X.C*I+M%-V7=VV7F]$>'F&:9;E-#
MVV-K1IQ[RDE=]E?=]DM6>Q56U?6-(T#39M9U[5+:RL[=-]Q=W<ZQQ1+ZLS$!
M1[DU\Z?\+9_X* ?'S]U\(?@?I7PLT27[OB'XBS?:-29#_%'81?ZIQQ\LV5/K
M5G2/^"=/@[Q=J4/BC]JSXM>*?BQJD3^8MOKMZUKI4+^L5C 0B#_9+,I]*]S_
M %?P& US3&1@_P"2E:M4^?*U2CYWJ<R_E/"_UBS#,-,JP<YK_GY5O1I_+F3J
MR\N6ERO^;J6O%W_!1SX(KKDO@GX%:-K_ ,5/$*<?V=X$TUKF"(GHTMT<1(G'
M+J7QW%9G]A_\%'/V@.=?\1^'/@GH,W6RTA5UG6V0]5:9L01Y'1DPRG/%?0/A
M'P5X.^'^AQ>&? GA33M&TZ#_ %-AI5DEO"GT1 !^E:,LL<,;332*B(I9W8X"
M@=23VH>>Y3EVF68.*:_Y>5K59>JBTJ2^<)-?S!_8.;9CKFF-ER_\^Z-Z,/G-
M-UGZJI!/^4\-^'7_  3O_9O\':X/&OC;1]0^('B4X,OB+X@Z@VISLPYR$D_=
M+@\@A,CUKU[Q3XM\%_#3PR^O^+-;L=&TJSC"F:YD6*- !PBCN>,!1R>@%>6^
M+/VL)_%&NS_#S]EWPB?&VN1-LN]55RFCZ:3_ !37'20CKL0_-@@-D8IW@_\
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
M8HK'^Q>-_P#H-V7_ (#'_&C[%XW_ .@W9?\ @,?\: -BBL?[%XW_ .@W9?\
M@,?\:/L7C?\ Z#=E_P" Q_QH V**Q_L7C?\ Z#=E_P" Q_QH^Q>-_P#H-V7_
M (#'_&@#8HK'^Q>-_P#H-V7_ (#'_&C[%XW_ .@W9?\ @,?\: -BBL?[%XW_
M .@W9?\ @,?\:/L7C?\ Z#=E_P" Q_QH V**Q_L7C?\ Z#=E_P" Q_QH^Q>-
M_P#H-V7_ (#'_&@#8HK'^Q>-_P#H-V7_ (#'_&C[%XW_ .@W9?\ @,?\: -B
MBL?[%XW_ .@W9?\ @,?\:/L7C?\ Z#=E_P" Q_QH V**QOL7C?\ Z#=E_P"
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
MQ16/]B\;_P#0;LO_  &/^-'V+QO_ -!NR_\  8_XT ;%%8_V+QO_ -!NR_\
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
MQ,NFZQJS76IR<6^C:9'Y]W*W8"-?NY[;L US./VB/BYU,?@#1).PQ/JDR?\
MH,&?^^E/K77_  _^$'P]^&4+#PEX=BBN) ?M%_,3)<S$\DM(V6.3SC('M72U
MS?V-GN<ZYMB/9TW_ ,N:#E%>DZWNU)?]N*DNC4D:_7LNP&F"I<TOYZB3_P#
M:>L5_P!O<[[6.1^'WP0^'?PWF;4M&TAKG4Y"3<:SJ4GGW<K'J3(W3/<+@&NN
MKRGXS?MM?LS? F[.B^-OB?9SZR7\N+P[HH-]J$DAZ)Y,(9D)[;]H]ZX'_A?7
M[<OQZ_=? ']G"V\!:-,?D\4_%2<I<E#_ !1Z?#EU;'(+DH<U^BY)P+B,%E\?
MJ^'AA<-NI3Y:4'W:O9S;Z\BE)^9\1FO&N7SQLJ<ZTL1B%HX4TZLUY2Y;J"[<
M[C%=SZ/O;ZRTVTDU#4;R*W@A0O-//($1%'4DG@#W->%^//\ @HM^SWH&N/X(
M^%\NK_$KQ*,A-"^'VFMJ+ ],M,O[E5!ZD.2N"<5DV7_!/.T^(MW'KO[8'QV\
M4_$^Z5Q)_9$]R=-T:)^N4L[9@,@]]V" ,K7NO@/X;_#[X7:&GAGX;^"=*T+3
MTQBTTFPCMT)]2$ W'W.2:];V7">6_P 2<\7/M#]U2_\  I)U)+RY*;\SSO:\
M79G_  X0PD'UG^]J_P#@,6J<'Y\]5?W3P7SO^"C_ .T#_J8/#7P1T";^*4KK
M>N%#WQQ;QY'8X=2?45L>"/\ @G-\ =*UR/QO\79-9^)WB1>3K/Q U)K\*>I5
M+<XA5,]%*MC  ->^45G5XKS.%-TL"HX:#TM17*VNTJC;JR7E*;7D:4N$<KG4
M57'N6*J+6]9\R3[QII*E%^<8)^9#I^GV&DV46FZ78PVUM @2&WMX@B1J.@51
MP!["IJ**^:;<G=GTZ2BK+8***\F^)/[5_AS0O$3_  T^$7AZY\=>,.5.CZ*X
M,-F<XW7-QRD*@]1DD'@[<YKS,TS?+LFH*KC*BBF[):N4G_+&*O*4GTC%-OL8
MXC$T,+#FJRMV[M]DEJWY+4]1U?5])T#3)]:UW4[>RL[:,R7%U=3+''$HZLS,
M0 /<UXIJ7[2OQ!^-%_-X5_9(\(+?0)(8KSQYKL31:7:D<'R5(W7+CV& <$AE
M.:=I'[,7C3XN:G#XQ_:X\8KK)CD$MEX)T=WBTBR/4;QG=<N/5N.H^85[5INF
MZ=H]A#I6D6$%K:V\82"VMH@D<:CHJJH  'H*\"W$7$.]\'AWZ/$37XQHI^7-
M4MUIR1Q?[=C>]*'_ )._S45]\O\ "SS'X8?LI>%/"?B%?B1\2M<NO&WC%L,V
MOZZ RVYZXMH>4@4'IC)'8@'%>JT45]!EF4Y=DV']C@Z:A%N[ZN3ZRE)WE*3Z
MRDVWU9VX?#4,+#EI1LOQ;[M[M^;U"BBBO1-PHHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "OQ!_X/>?^36?@?_V4#4?_
M $A%?M]7X@_\'O/_ ":S\#_^R@:C_P"D(H \_P#^#3;_ )2F?M=_]O'_ *?)
MZ_?ZOP!_X--O^4IG[7?_ &\?^GR>OW^H **** "BBB@ HHHH **** "BBB@
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
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !7X@_\
M![S_ ,FL_ __ +*!J/\ Z0BOV^K\0?\ @]Y_Y-9^!_\ V4#4?_2$4 >?_P#!
MIM_RE,_:[_[>/_3Y/7[_ %?@#_P:;?\ *4S]KO\ [>/_ $^3U^_U !1110 4
M444 %%%% !1110 4444 %>4?MS_\FC^/?^P"_P#Z&M>KUY1^W/\ \FC^/?\
ML O_ .AK0!W7PN_Y)GX=_P"P%:?^B4K=K"^%W_),_#O_ & K3_T2E;M !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 445%>7MEIU
ML][J%W%!#&,R2S2!54>I)X%*4HPBY2=DAI.3LB6BO/==_:>^$^F7IT?0=3NO
M$6H?PV'ANS:[=OHR_)_X]5'_ (3']I3QQ\OA+X:Z;X7M'^[?>);PRS%?40Q?
M<;V;(KY:KQGD/M'2PDWB9K3EH1=6S[2E&\(?]ORB>Q#(<QY5.M%4HOK4:A]R
M?O2_[=3/4*X_QC\?/A%X%D-MKOCBS-R#M%E9L;B8M_=V1AB#]<5@?\,[:OXK
M_>_&'XO:[KP;_6:=9R"QLV]C'%RWIG(-=AX.^%GPY\ 1A/!W@S3[!@,>?%;@
MRD>\C9<_B:S^N<8YC_N^&IX6+^U6E[2?_@JDU#_RO\BO89'A?XM659]H+EC_
M .!S7-_Y3.._X7-\5_&7[OX6? ^_2%ONZIXIE%G$!V81<NZ_0TO_  J7XT^-
M/G^)GQMFL8'^_I?A"W^S*/4>>V9&'L17I]%'^JDL9KFF,JU_[JE[*GZ<E+D<
MEY5)3#^V50TP="%/SMSR_P# I\UGYQ43X8_:?L/A[X:^(#>"/A[IQ":6NW5+
M^>Y>::ZNFY;<[D_=&!@8&[=Q7FU?=-[^R3^S[J5Y-J-_X":6>>5I)I7UB\+.
M[')8GSNI)S47_#'G[.?_ $3O_P J]Y_\>K^:,^^C]QKG&<5\93J86E"<FXPC
M*HHQC]F*2HI:*UWU=V]6?J^7>)>08' TZ$HUIN*2<FHMM]7K4ZO[EH>(?L-?
M%?\ X1;QS-\.=5N=MEKOS6NX\1W:CCZ;U!7W*H*^NZ\XL/V2OV?M+OH=3T_P
M&T-Q;RK+!*FL7@9'4Y5A^^Z@@&O1Z_>O"SAGB?@_AQY5F]2G44)-TW3E)VC+
M5Q?-"&TKM6OH[:65_P XXPS;*,\S3ZY@8RBY+WE)):K1-6D]UH]MO,****_2
MSY0**** "BBB@ HHHH **** "BBB@ HHHH **CO+RTT^U>]O[J."&)=TDTSA
M50>I)X KR?XA_MY_L>?"TO%XM_:$\.>=&<26NEW9OYE/]TQVHD8'V(%=V!RS
M,LSJ>SP=&=27:$7)_<DSAQV:99E=/VF,KPI1[SE&*^]M'KE%?./_  \)NO&I
M\K]G[]DOXG^,]_\ J=2ET,:9ITGIBYN#Q^*T#Q'_ ,%/_B7QI7PZ^&GPTM)/
MOG7-6FUB^B'^S]G A8_[W%>U_JCFM'7&2IT%_P!/*D(R_P#!:;J?^2'A_P"N
M.4UM,%&IB'_TZI3E%_\ <1I4O_)SZ.K&\9?$;X>_#JQ_M/X@^.]&T*VQGS]8
MU.*V3'^](P%>%?\ #%?Q\\??/\>OV\_'>H1R?ZW3_!-M;Z!!C^X3$'9U[<X)
M%;/@W_@FS^QIX1O?[8NO@]!X@U%CF?4/%=[-J4DQ]66=VC)^BBC^SN%\+_O&
M.E4?:C2;7_@55TFO7DEZ!_:7%6+_ -WP$:2[UJJ37_;M)54_3GCZE?Q-_P %
M,_V0=&U$Z#X7\?7OB_5/X-,\&Z)<:A))_NNB>6?^^ZSO^&N_VJ?B#\GP0_8(
M\4)!)]S4OB%J]OHHC'9F@8M(X]E.:]]\,^$/"?@O3AI'@[POIVDVBXVVNF64
M<$8Q_LH *T:/[3X:PO\ NV =1]ZU64E_X#25&WHY2\[A_97%&+_WG,%37:C2
MC%^G-5=:_JHQ\K'SB/A]_P %,_B5SXK^/?@#X=6TA_U'@_PW)JEPJ?W6>\(4
M-_M+P.HH_P"'<'A3QC^]_: _:&^)OQ W_P"NT_5/%+VU@WJ%M[<+L!]GKZ.H
MH_UOSBCI@^2@O^G5.$)?^!I>T^^;#_4W):VN,Y\0_P#I[4G./_@MOV?W01YC
M\.OV+OV4?A1Y<G@7X >&+6:+'E7EQIBW-POTFGWR?^/5Z;'''%&L42!54 *J
MC  '84M%>%C,PQ^8U?:8JK*I+O*3D_O;9[V"R_ 9=2]GA*,:<>T(J*^Y)(**
M**Y#L"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** *VH:-I&
MK+LU32K:Y&,8N(%?C\1[FL'4O@G\&=9S_:_PC\,7>>OVG0+>3/3^\A]!^5=/
M16]+$XFA_#FX^C:_(PJX7#5_XD%+U2?YGG.I?L??LG:ODZA^S-X!D8]7'A&S
M5N_\0C![^M8&I?\ !/7]BC5<_:OV;?#*YZ_9K0P_^BV6O9:*]&EQ#G]#^'BZ
ML?2I-?DSS:O#G#U?^+@Z4O6G!_FCY\O_ /@EA^P7J#;W^ 4$3@Y5[77]1B*G
ML1LN *K_ /#K?]E.T_Y%ZW\7:3C[HTWQM?+M^FZ1OI^-?1=%=T>-.+TK?VA6
M:[.K-K[FVC@?!'!K=UEU!/NJ4$_O23/G0_\ !-OP-:\^'_VF?C9I)'W3IWQ%
ME7;]-T;=^:/^&"/&^G\>'_V]_C;&!]W^T?$\=W^>Z(9XKZ+HI_ZY\2/XJ_-_
MBC"7_I463_J5PRO@P_+_ (93C_Z3)'SI_P ,A?M5V'/A_P#X*+>+XB/N_P!H
M^%K&[Y]]V,\T?\,]_P#!0G3?^0=_P4*L;]1]U-2^%-@F!Z%HY,GZ]Z^BZ*/]
M;LV?QPHR]<-AW^+I7_$?^IV3KX)UX^F)Q*_!5;?@?.G_  KS_@IWIO\ QX_M
M$?#/4\=/[1\(SPY^OE-^'X4FW_@K#IG ?X!ZF@[L-8AE/Y?+_P#7-?1E%'^M
M%67\3"8>7_<&,?\ TCE%_JI2C_#QF(C_ -QI2_\ 2^8^=/\ A8'_  4]TS_C
M^_9]^&&IXZ_V;XLN(<_3S5_S@USWQ'_:F_;"\*Z#+H/Q9_9CTCPI#J]M+;6F
MOV/CN&\:-]O)2!(]Y."?F)4+N4YS@'ZLHKP^)L=+/.'\3@,+AJ&'JU82A&M&
M-5RI\RLY1BJ\8N25^6^B=FT[6?J9+E-3*\VHXNMC*]6G3DI.G)TN6=M>63=%
MRL^MFG;9K<_,^BO#O^'3?_!0'_H@7_EU:5_\E4?\.F_^"@/_ $0+_P NK2O_
M )*K\Y_XD(X,_P"B]P__ (3T_P#YN%_Q-SQM_P!$3B/_  ;4_P#F,^Z?V9?V
M5/V??C];2?%KXTMK?CWQ'9WSQR6?C+6Y+RTT\$[HU@MSA/**8 5P_*MZ5]7:
M+H>B>&M+AT/PYH]KI]E;)LM[.RMUBBB7T5% "CV JU17V^ Q/$"R3"X'-,;+
M$RH0C!2=XIJ*LFH<TE%M6O9ZN[ZGHRR_(\/F-?%9=A8T/:R<FE9N[=W>5DY:
M[7V5ET"BBBM#8**** "BBB@ ILTT5O$T\\JHB*6=W; 4#DDD]!7G'Q>_:@^'
MWPLU2/P98PW7B3Q7<\67A70(_/NG8C@R8XA7N2W.,D XKD8?@9\9_P!HB5=7
M_:@\2'1] 9@\'P[\-W96-QG(%Y<J=TQ]54[<@$%>17S&-XEI_698++*;Q->.
MDE%VA3?_ $]J6<8?X4I5+:J#6IY]7'Q]HZ6'CSS6Z6R_Q2V7IK+R+WBG]J^\
M\7:[/\/?V6?"'_"::S"WEWFLLYCT?33ZRS])2.NQ#\W."2,5+X,_9.CU?Q!#
M\1_VE/%C^.O$<1WVMM<Q[=+TT]=L%M]TX_O..< [0>:]4\+>$_#'@?0X/#/@
M_0+33-/MEVP6=E (XT]3@=SU)ZD\FM"L:/#53'U8XC.ZBKS3O&FE:A!]+0=^
M>2_GJ.3OK%0V)C@)5I*>+ESOI':"^75^<K^20BJJ*$10 !@ #@"EHHKZT](*
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH *_$'_ (/>?^36?@?_ -E U'_TA%?M]7X@_P#!
M[S_R:S\#_P#LH&H_^D(H \__ .#3;_E*9^UW_P!O'_I\GK]_J_ '_@TV_P"4
MIG[7?_;Q_P"GR>OW^H **** "BBB@ HHHH **** "BBB@ KRC]N?_DT?Q[_V
M 7_]#6O5Z\H_;G_Y-'\>_P#8!?\ ]#6@#NOA=_R3/P[_ -@*T_\ 1*5NUA?"
M[_DF?AW_ + 5I_Z)2MV@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M*YKQG\8OA?\ #X,/%_C?3[.5.ML9M\W_ '[3+_I7)C<?@<MH.OBZL:<%O*<E
M%+YMI&U##8C%5%3HP<I/HDV_N1TM%>8?\+^\6^+OW?PB^"^M:HC?<U/5\6%J
M1_>5GY<>P -'_" ?M$>-_F\<?%FT\/6S_>T_PG:'S,?]?$OS*?ID5\Y_K?AL
M7IE>'JXGSA'EI^OM:KA"2_P.;\F>K_8E6CKC*L*/E)WE_P" 0YI)_P")+U.^
M\1^+O"O@^S^W^*O$=EIT..)+VY6,-[#<>3["N$N/VGO#.L3-8_"SP?KOBV=3
MM\S3+!DME;T>:0 */?!%7O#G[,WP@T"[_M6^\//K=^>7U#Q!<-=R.?4A_DS[
MA17=V]O;VD"VUK D4:+A(XU"JH] !TH]EQIF/\2I2PD>T$ZU3_P.:A3B_+V=
M1>;W#GR'"_#&=9_WFJ<?N7-)K_MZ+\CS,V_[4_CK_77F@^"+1_X85_M"]4>A
M)Q%^(P:DLOV7O!-]<IJ?Q(U_6O%MVIW!M;U%S"A_V(D(4#V.17I=%5'@S)ZT
ME/,'/%2_Z?2<X^JI:44_\--">?8Z"Y<,HT5_T[7*_P#P/6;^<F4M"\->'?"]
MD-.\-:%9Z?;CI#96RQ+^2@5=HHKZBE2I4*:ITXJ,5LDK)>B1X\YSJ2<IN[?5
MA1116A(4444 %%%% !1110 4444 %%%% !115#Q'XJ\+^#].;6/%OB2PTNT3
M[UUJ-XD$8^K.0*J$)U)*,%=OHB9SA3@Y3=DNKV+]%>&>-/\ @I'^QEX,O/[(
MC^-%IKNH,VV"P\*VLVIO,W]U6MT9,_5A6(?VVOCEX]^3X"?L'>/]41SB*_\
M&4L&@6[#_GHIF+%U[\8)]C7T5+A#B.I352>'=.#VE5<:4?E*JX)_)GS=7C+A
MJG4=.&)56:WC24JTOG&DIM?-'T=17SC_ &)_P5!^)7.H^-_AG\-+20_+_9.F
MS:Q?Q#_:\\B!C]*/^'?>K^-3YO[0'[7WQ.\8;O\ 7:=::PNE:?+ZYM[<?R85
MI_8.5X;_ 'S,*:_NTU.K+[U&--_^##/_ %@S7%?[EEU5K^:HX4H_<Y2JK_P4
M>O\ Q#_:!^!GPF5_^%F?%_PWH;H,F#4M9ABE/LL9;>Q]@":\EOO^"G/[.NIW
M<FE_![0_&OQ&O8SM-MX(\(7-P WH7E$:X]P2*ZKX>?L#?L<_"]DF\+?L^^'G
MGC.5N]7MCJ$P;^\'NC(P/N"*]:L;"QTRTCL--LXK>")=L4,$81$'H . */:\
M'83X*5:N^\I0I1^<8JK+[JB]0]CQGB_CJT<.NT8SK2^4Y.E'[Z;]#YV/[07[
M?'Q&^7X5_L6V'AFV?_4ZM\1?%:+_ -]6EL/-7'UH_P"%!_\ !0#XC'=\4?VR
M])\*VS_Z[2OAUX37G_=NKH^:GUP:^CJ*/]9OJ_\ N6#H4O/D]K+[ZSJ6?FDO
M*P?ZK/$?[]C:];R]I[*/W4%2NO*3?G<^=;/_ ()D?L^:O=)J7QF\3>.?B1=J
MV\3>-O&%S.H;U"1&-<>BD$8XKUCX>?L[_ ;X2A#\-/@[X:T21.EQI^C0QS$^
MID"[V/N237945Q8WB3/\QI^SQ.*G*'\O,U%>D5:*^2.[ \,\/9;4]IAL+3C/
M^;E3F_6;O)_-A1117B'N!1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !15;6=:T?P[I<^N>(-5MK&RMHR]S=W<R
MQQQ*.I9F( 'UKQ6__:2^(WQMOI?#'[)/A%;JT20Q7GC[7X6BTVW(.&\A"-UR
MX]A@'&05.:\;-<^R[)W&%9N56?P4X+FJ3_PQ6MEUD[1CO*26IRXG&4,*U&3O
M)[16LGZ+]=EU9Z;\4OC%\-_@QX?/B3XD>*K;38#D01NVZ:X8?P11KEI&Z< '
M'4X'->6?VQ^TO^T^-GANWN_AAX)FZZE=H#KFHQGO&G2U4C^(G<.""P.*Z;X6
M_LI^$/!NOCXC?$+6;KQIXR?#2>(M> ?R#UQ;P\I H[8R1R 0.*]3KQ_[.SW/
M]<RF\/0?_+FG+WY+_I[5CMYPI-=G4FM#E]AC,;K7?)#^6+U?^*2_*/\ X$SC
MOA%\!OAA\$-,>P\ ^'4AGN.;[5+EO-O+QLY+2RM\S9/..%!)P!78T45]/@L%
M@\NPT</A::ITX[1BDDODCT*5&E0IJ%.*271:(****ZC0**** "BBB@ HHHH
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH ***X?XP_M#_  P^"5O%%XMUAY]4N\#3M TR+S[^
M\8G"K'"O/)XW-A<\9S7)CL?@LLPLL3BZD:=..\I-)?CU?1;MZ(RK5J6'IN=2
M2275G<5Y+\1OVL/#^D^(I/AI\&O#EQX[\7C*MI>CN/L]D<XW7-Q]R( \$9)!
MX.W.:P/^$(_:._:<'G_%'4KCX=^#9N5\,:1< ZK?QGM<SXQ"I'5%&<$JPR,U
MZU\.?A=\/_A)X=3PK\.?"MII5DF"T=NGS2MC&YW.6D;_ &F)-?,_7L_X@TP$
M7AJ#_P"7M2/[V2_Z=TI?!Y2JJ_\ TZ:U.#VV-QO\%>SA_,U[S_PQ>WK+_P !
M/+M&_9?\7_%;5(/&?[6_C!->EBD$MEX,THM%H]B>VY<[KAQ_>?CJ#N%>U:?I
M]AI-C%IFE6,-M;6\8C@M[>((D: 8"JHX 'H*FHKV<JR++<F4I4(MSG\<Y-RJ
M3?\ >F[M^2^&.T4EH=6&P=#"W<%J]V]9/U;U_1= HHHKV#J"BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "OQ!_X/>?^36?@?\ ]E U'_TA%?M]7X@_
M\'O/_)K/P/\ ^R@:C_Z0B@#S_P#X--O^4IG[7?\ V\?^GR>OW^K\ ?\ @TV_
MY2F?M=_]O'_I\GK]_J "BBB@ HHHH **** "BBB@ HHHH *\H_;G_P"31_'O
M_8!?_P!#6O5Z\J_;?@FNOV3?'5M;QEY)-$9411RQ+J !2E*,(N4G9(:3D[([
MCX7?\DS\._\ 8"M/_1*5NU@_"QUD^&/AQT8$-H-F01W'D)6]1&49133NF#33
MLPHHHIB"BN/\8_'SX1>!9#;:[XXLS<@[196;&XF+?W=D88@_7%<__P +F^*_
MC+]W\+/@??I"WW=4\4RBSB [,(N7=?H:^:Q?%_#^$KO#QK>UJK>G24JLUZQI
MJ3CZRLN[/5HY)F=:FJCAR0?VIM0C\G)I/Y79ZA6+XM^(W@/P'#Y_C#Q=8:=\
MN52YN5#L/]E/O-^ -<5_PJ7XT^-/G^)GQMFL8'^_I?A"W^S*/4>>V9&'L16U
MX2_9X^#W@V?[=I_@NWN;PMN:^U,FZF9O[VZ0G:?]W%<W]J<59A_N>"5&/\U>
M:OZJE2YV_252F^YM]4R?#?Q\0ZC[4XZ?.<^6WRC)&*?VDSXG8P?![X7:]XG)
MX2^,'V.R/_;:4?\ LM'_  CG[3OCGGQ!XWT?PC:/UM=#M3=7.W^ZTLGRJ?\
M:2O3P H"J  !P!11_JUF&.US3'U*B_DI?N(?^2-U?DZS7D']JX;#_P"Z8:,?
M[T_WDO\ R9<GW01YUH_[+WPPM[U=8\71ZAXHOQUO/$E^]R?IL.$Q[$&N^TW2
M],T:S33](TZ"TMXQ\D%M"L:+]%4 "IF944N[  #))/2N8\2?&_X+^#@Q\7_%
M[POI6W[W]I:_;08^N]Q7O9-PSEN72<<LPD8R>[A'WI?XFDY2?FVV>7F.=5ZT
M5+&U_=6W-*R7HF[+Y'445XSXC_X*&_L3>%@QU/\ :2\-2[>O]FW37GY?9U?/
MX5S7_#T?]EC525\ ?\)AXL;^!?#O@F^E+_3S(TK[*CPCQ57CS0P-7E[^SDE]
M[27XGRE;C'A/#SY)X^CS=E4@W]R;?X'T717SG_PWKXZU\[?A]^P?\9;[/^KD
MUGP_%ID;^X:21N/?% _:#_X*"^)#CPS^P18:/&WW+KQ'\2+1OQ,4*;A]*U_U
M0SJ/\;V5/_'7HP?W2J*7W(R_URR2?\'VM3_!0KS7WQIN/WL^C**^<_\ C:MX
ME_Z(EX9@;_L)WEPO\HS2_P##/O\ P4%\1G=XF_;VT_1XV^_:^'?AM:-^ EF?
M</K1_JYAJ?\ 'S##P_[>J3_]-TYK\1?ZRXJI_ R[$3_[=IP_].U8/\#Z+H)"
M@LQP!U)KYS/[!?CW7^?B#^WE\9+W/^LCT77HM,C?V*QQMQ[4O_#K?]EC5"&\
M?_\ "8^+&_C;Q'XVO92_U\N1*/[,X8I?Q<PE+_KW1E+_ -.3I!_:G%57^%ET
M8_\ 7RO&/_IN%4]E\2?&GX.>#MW_  E_Q9\,Z5M^]_:6O6\&/KO<5P7B/_@H
M/^Q3X6W?VG^TGX7EV]?[.O3>?E]G#YIGAS_@GE^Q-X6"C3/V;?#4NWI_:5JU
MY^?VAGS^-=]X;^"'P7\'!1X0^$/A?2MOW?[-T"V@Q]-B"C_C#*7_ $$5/_!=
M+_Y;;\0_XS:M_P! ]+_P;5_^4W_ \<;_ (*E?LH:DQ3P%>^*_%; X"^'/!=]
M+N/H/,C3-)_PWQXRU_Y?A[^PG\9M0S]R75_#D>FQ/[AY)#Q[XKZ+5510B*
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
M7X@_\'O/_)K/P/\ ^R@:C_Z0B@#S_P#X--O^4IG[7?\ V\?^GR>OW^K\ ?\
M@TV_Y2F?M=_]O'_I\GK]_J "J^KZOI7A_2;K7M=U&&SLK&W>XO+NYD"1P1(I
M9W=CPJA022> !5BL?XB>!= ^*'P_UWX:>*XI'TOQ%H]UIFI)#)L=K>XB:*0*
MW\)VN<'M0!\?:!_P5Y\5_$?Q)IOC;X(?L3>/_&/PMU3P!J?BG2==TV;3H=8U
MK3[2]M[<W]CI\]W&\ENPF9DBD\NYE&TI$<J&^J- ^.7@KQ1\"M(_:'\.V>LZ
MAH&N^';/6M+ATW0[BZOI[:ZBCEA"VT"/(7*R)E0#MY+$!21^-WP<^-7[0_\
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
M%8_V+QO_ -!NR_\  8_XT?8O&_\ T&[+_P !C_C61L;%%8_V+QO_ -!NR_\
M 8_XT?8O&_\ T&[+_P !C_C0!L45C_8O&_\ T&[+_P !C_C1]B\;_P#0;LO_
M  &/^- &Q16/]B\;_P#0;LO_  &/^-'V+QO_ -!NR_\  8_XT ;%%8_V+QO_
M -!NR_\  8_XT?8O&_\ T&[+_P !C_C0!L45C_8O&_\ T&[+_P !C_C1]B\;
M_P#0;LO_  &/^- &Q16/]B\;_P#0;LO_  &/^-'V+QO_ -!NR_\  8_XT ;%
M%8_V+QO_ -!NR_\  8_XT?8O&_\ T&[+_P !C_C0!L45C_8O&_\ T&[+_P !
MC_C1]B\;_P#0;LO_  &/^- &Q16/]B\;_P#0;LO_  &/^-'V+QO_ -!NR_\
M 8_XT ;%%8_V+QO_ -!NR_\  8_XT?8O&_\ T&[+_P !C_C0!L45C_8O&_\
MT&[+_P !C_C1]B\;_P#0;LO_  &/^- &Q16/]B\;_P#0;LO_  &/^-'V+QO_
M -!NR_\  8_XT ;%%8_V+QO_ -!NR_\  8_XT?8O&_\ T&[+_P !C_C0!L45
MC_8O&_\ T&[+_P !C_C1]B\;_P#0;LO_  &/^- &Q16/]B\;_P#0;LO_  &/
M^-'V+QO_ -!NR_\  8_XT ;%%8_V+QO_ -!NR_\  8_XT?8O&_\ T&[+_P !
MC_C0!L45C_8O&_\ T&[+_P !C_C1]B\;_P#0;LO_  &/^- &Q16/]B\;_P#0
M;LO_  &/^-'V+QO_ -!NR_\  8_XT ;%%8_V+QO_ -!NR_\  8_XT?8O&_\
MT&[+_P !C_C0!L45C_8O&_\ T&[+_P !C_C2&S\;*"S:Y9 #J3;'_&@#9HKS
MKQ3\;/!7@C<OBSXY^$;%UZPSWT0D_!-VX_@*X:[_ &Y?AE-<-8^#/%=_XIN4
M.#;>&_"EU.V?0%E53^!KP<;Q1PWET^3$XRE"7\KG'F?I&]W\D<=7,,#0=JE6
M*?:ZO]VY[]17@$/[0_[4'B@ _#W]ECQ!(K_=E\326^E;1ZE9&8_AUJ[%;_\
M!0?Q2G[V^^'GA:%O]F>]N4_3RS7%_K?@*W^Z4*];_#1J)?*=10@_E(R_M.C+
M^'"<O2$K??))?B>Y5'=WEI86[7=]=1PQ(,O+*X55'N3P*\.N?V:_VD_%"X\>
M?MC:Z0WWHO#>G0Z9M]@T8)/UZU7@_8"^&5U<K?>,KF_\3W*'(N/$6M7<[9]2
M!(JG\11_:W%&)_W?+>3_ *_5H1_"DJ_W7^X/K.85/@H6_P 4DO\ TGG/EG_@
MH]\7[SXB_M 7'A?3_$$5YH?AZU@ATX6=R)('DDB2660%206W/L)[>6!V-> 0
M3S6TR7-M,T<D;!HY$8AE8'(((Z&ONC]IO_@F\_C.UMO$7P2MM$TN_L[?R9M(
MBB-O#=H"2'#<@2\XRW##&2-O/CWP]_X)E_M)>)?$$=EXWTFR\.:<KC[1>W&I
M0W#%,\^6D#OEO0,5'O7\?\=^'OB+CN-L15GA)UI5IN49TTY4TG\,>=I**@K1
M]_ET5]K,_,LWR3/*V:SDZ;DYNZ:NXZ[*_2VVMMCZ'^!O[<LVI?"30)/$OP=^
M(VOZNM@L5]?Z%X6:YANI$)3S%DW@,6VY./XMP[5U?_#7^O77.F?LD?%E_3[5
MX:6#^<AKO/ _@#6?AYX/TWP-X7U&SAT_2K-+:TC-N2=BC&2>['J3W))K5^Q>
M-_\ H-V7_@,?\:_K/+<BXNHY=1I8C,_?C"*DU2@]4DGK)N^O5K7<_2*&$S*%
M"$9XC5)7]U;V[N]SR[_AI[XQ7/\ R#?V-O&C_P#7U<V\/\R:/^%^_M37/&F?
ML17[GM]J\<V,'/XJ>W^%>H_8O&__ $&[+_P&/^-'V+QO_P!!NR_\!C_C7;_8
M.>2^+-JR_P -/#+_ -*H2-?J>+>^)E\E#]8,\N'Q9_;2O/\ CW_9)TJSST^U
M^/;>3'UV)VH_X3+]NZ\_X]_@QX%L\]/M?B.63'UV"O4?L7C?_H-V7_@,?\:/
ML7C?_H-V7_@,?\:/]6L=+X\TQ+_\$+_TFA$/J%9[XB;_ / %^4$>7&\_X*%7
M?_'OH_PBM ?^?FXU*0C_ +X[]Z/[$_;^NO\ CX\<?#"T_P"O73+V3_T,UZC]
MB\;_ /0;LO\ P&/^-'V+QO\ ]!NR_P# 8_XT_P#56,OCQN(?_<5K_P!)40_L
MY/>K-_\ ;UORL>7?\*]_;BN^+C]HCPI:9ZFT\)>9C_OMOPH_X4M^V+>?\??[
M:,-N#]Y+3X=V1Z]0&9\C'8UZC]B\;_\ 0;LO_ 8_XT?8O&__ $&[+_P&/^-'
M^I^6R^.OB'_W-8A?^DU4']F4'O.;_P"XD_TDCR[_ (9T_:*N?^0G^VKKSYZ_
M9/#-G!_(G%'_  RI\1[GG4OVPOB$_P#UZW,,/\D->H_8O&__ $&[+_P&/^-'
MV+QO_P!!NR_\!C_C2_U+R!_$JLO\6(Q$O_2JK#^RL'UYGZSF_P Y'EW_  QF
M]Q_R$_VJ/C!/_L#QGL0_4"+K[T?\,.?#Z;_D*?%7XC7WK]K\92G/Y 5ZC]B\
M;_\ 0;LO_ 8_XT?8O&__ $&[+_P&/^-'^I'"K^+"J7^)RE_Z4V']DY=UII^M
MW^;/+O\ A@;]GN?_ )"EOXBOL_>^U^*+L[O7.''7O3X?^"?7[(T3>;)\)_.<
M_>DGUR^<G\Y\5Z=]B\;_ /0;LO\ P&/^-'V+QO\ ]!NR_P# 8_XTUP+P7>[R
MV@_6E!_G%A_9&5?\^(?.*?Z'!6O[$'[*5G_JO@KI9_ZZR3/_ .A.:TK7]DO]
MF:SP8?@7X9./^>NE1R?^A UU?V+QO_T&[+_P&/\ C1]B\;_]!NR_\!C_ (UU
MT^%.%Z/\/ 45Z4H+_P!M-8Y=E\=J,5_VZO\ (QK3]GCX V&#9? [PA$1C#)X
M:M0>.G/EYK2M/A5\+[#'V'X;Z!#CIY6CP+C\EJ?[%XW_ .@W9?\ @,?\:/L7
MC?\ Z#=E_P" Q_QKOIY3E5'^'AX+TA%?H:QPV&C\,$ODBY:^'/#UB,66A64/
M'_+*U1?Y"KE8_P!B\;_]!NR_\!C_ (T?8O&__0;LO_ 8_P"-=L(0IJT4EZ&R
M2CL;%%8_V+QO_P!!NR_\!C_C1]B\;_\ 0;LO_ 8_XU8S8HK'^Q>-_P#H-V7_
M (#'_&C[%XW_ .@W9?\ @,?\: -BBL?[%XW_ .@W9?\ @,?\:/L7C?\ Z#=E
M_P" Q_QH V**Q_L7C?\ Z#=E_P" Q_QH^Q>-_P#H-V7_ (#'_&@#Q/\ :._X
M)W_#3X[>*)O'>A^(;CPSK-XVZ_EM[19[>Y?O(T19"'/<JP!ZD$DDO_9N_P""
M>OPT^ GB6+QUJ^OW'B76[7)L;BYM%@@M6(QO2(,QWXSAF8XZ@ \U[3]B\;_]
M!NR_\!C_ (T?8O&__0;LO_ 8_P"-?%+PZX)6>?VPL%#ZQ?FYO>MS;\W)?DYK
MZ\W+>^M[ZGE?V'E*Q?UKV2Y[WOKOWM>U_.V^IL45C_8O&_\ T&[+_P !C_C1
M]B\;_P#0;LO_  &/^-?:GJFQ16/]B\;_ /0;LO\ P&/^-'V+QO\ ]!NR_P#
M8_XT ;%%8_V+QO\ ]!NR_P# 8_XT?8O&_P#T&[+_ ,!C_C0!L45C_8O&_P#T
M&[+_ ,!C_C1]B\;_ /0;LO\ P&/^- &Q16/]B\;_ /0;LO\ P&/^-'V+QO\
M]!NR_P# 8_XT ;%%8_V+QO\ ]!NR_P# 8_XT?8O&_P#T&[+_ ,!C_C0!L45C
M_8O&_P#T&[+_ ,!C_C1]B\;_ /0;LO\ P&/^- &Q16/]B\;_ /0;LO\ P&/^
M-'V+QO\ ]!NR_P# 8_XT ;%%8_V+QO\ ]!NR_P# 8_XT?8O&_P#T&[+_ ,!C
M_C0!L45C_8O&_P#T&[+_ ,!C_C1]B\;_ /0;LO\ P&/^- &Q16/]B\;_ /0;
MLO\ P&/^-'V+QO\ ]!NR_P# 8_XT ;%%8_V+QO\ ]!NR_P# 8_XT?8O&_P#T
M&[+_ ,!C_C0!L45C_8O&_P#T&[+_ ,!C_C1]B\;_ /0;LO\ P&/^- &Q16/]
MB\;_ /0;LO\ P&/^-'V+QO\ ]!NR_P# 8_XT ;%%8_V+QO\ ]!NR_P# 8_XT
M?8O&_P#T&[+_ ,!C_C0!L45C_8O&_P#T&[+_ ,!C_C1]B\;_ /0;LO\ P&/^
M- &Q16/]B\;_ /0;LO\ P&/^-'V+QO\ ]!NR_P# 8_XT ;%%8_V+QO\ ]!NR
M_P# 8_XT?8O&_P#T&[+_ ,!C_C0!L45C_8O&_P#T&[+_ ,!C_C1]B\;_ /0;
MLO\ P&/^- &Q16/]B\;_ /0;LO\ P&/^-'V+QO\ ]!NR_P# 8_XT ;%%8_V+
MQO\ ]!NR_P# 8_XT?8O&_P#T&[+_ ,!C_C0!L45C_8O&_P#T&[+_ ,!C_C1]
MB\;_ /0;LO\ P&/^- &Q16/]B\;_ /0;LO\ P&/^-'V+QO\ ]!NR_P# 8_XT
M ;%%8_V+QO\ ]!NR_P# 8_XT?8O&_P#T&[+_ ,!C_C0!L45C_8O&_P#T&[+_
M ,!C_C1]B\;_ /0;LO\ P&/^- &Q16/]B\;_ /0;LO\ P&/^-'V+QO\ ]!NR
M_P# 8_XT ;%%8_V+QO\ ]!NR_P# 8_XT?8O&_P#T&[+_ ,!C_C0!L45C_8O&
M_P#T&[+_ ,!C_C1]B\;_ /0;LO\ P&/^- &Q16/]B\;_ /0;LO\ P&/^-'V+
MQO\ ]!NR_P# 8_XT ;%%8_V+QO\ ]!NR_P# 8_XT?8O&_P#T&[+_ ,!C_C0!
ML45C_8O&_P#T&[+_ ,!C_C1]B\;_ /0;LO\ P&/^- &Q15'2H-?AD<ZQ?P3*
M5^011;2#5Z@ HHHH **** "OQ!_X/>?^36?@?_V4#4?_ $A%?M]7X@_\'O/_
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
M#;'Z11 ;?SH_MW/L1_NN637G5J4J:^Z,JLU\X)^0?7,9/^'AW_V\XQ7X.3_
M].\4?$_X;>" S>,_B!HND[1R-1U2*$_D[ UY[K/[=?[,6EW7]FZ=\0FUB\.=
MEIH6F7%VS_0HFP_]]5H>%_V,OV7?")5M+^"VC3,O._4XFO23Z_Z0S\UZ%HOA
MWP_X;MOL7AW0K.PA_P">-E:I$OY* *.7C?$[RP]!>2J5W][=!?/E^06S:IUA
M#Y2G_P#(?D>0_P##6?CGQ&,?#']DSQ]J>?\ 5SZU:Q:7#)[AY6;CWQ1_PDG[
M>?BW_D%?#7P%X2B;[W]N:Q-?S(/;[, A/UXKVJBC_5[-<1_O69UGY05*G'[U
M!U/_ "H'U+$S_B8B7HE&*_*_XGBO_"B_VI_%/S>.OVN9[*)OO67A7PU!;;?I
M.Q+_ )BA?V%/A3K!W_$OQGXV\8DG+KXC\53NA/\ NQ;,#VKVJBC_ %)X<J?[
MS2E7_P"OU2I67W5)2C\DK>0?V3@9?Q(N?^*4I?A)M' ^%?V6?V<_!>UO#_P7
M\/(Z?<FN-.2XD7Z/*&8?G7<V=E9Z?;K:6%I%!$@PD4,855'L!P*EHKWL%EF6
MY;#DPE&%-=H145^"1V4J%"@K4X**\DE^04445VFH4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH *_$'_@]Y_Y-9^!__90-1_\ 2$5^WU?B#_P>\_\ )K/P/_[*!J/_
M *0B@#S_ /X--O\ E*9^UW_V\?\ I\GK]_J_ '_@TV_Y2F?M=_\ ;Q_Z?)Z_
M?Z@ HHHH **** "BBB@ HHHH **** "O*/VY_P#DT?Q[_P!@%_\ T-:]7KRC
M]N?_ )-'\>_]@%__ $-: .Z^%W_),_#O_8"M/_1*5NUA?"[_ ))GX=_[ 5I_
MZ)2MV@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH 1E5E*LH((P01UKE?$WP*^"OC+<WBGX3>'+]VZRW&C0M(
M/H^W</P-=717-B<'@\;3Y,13C./:237W.YG4I4JJM.*:\U<^'?\ @HE^R)X&
M^&_@G2_B9\&O *:=;6UY)#XB6SEE=0L@7R9"K,0BJRLN5 YE7/:OCVOV?OK&
MRU.SET[4K.*XMYXVCG@GC#I(A&"K*>""."#UKRQ?V&?V3UU__A)!\%].^T>9
MO\LW,YM\_P#7#S/*Q[;<>U?SGQ_X#5L_SWZ_D=2E0A-+GIM.,8M*W-!0BUJE
M=JR]Z[OKI\/G/!\L9C/;81Q@G:ZM9+S5EU[::]=3YU_X)_\ ['/@SXH_#G4/
M'_QG\+W5W87E^BZ'9O?3P1RI&"'F*QNN\%CM!/>-J^J_"O[-7[/_ (*VMX:^
M#GAVWD3[L[Z7'+*/^VC@M^M=G:6=II]I%86%K'!!!&(X884"I&@& J@<  <
M"I*_6^$_#[AWA;*:&%C0IU*L%:55TX\\G=MN]F[7>BN[*R/I<MR7 Y=AH4U!
M2DEK)I7;]=_3L-@@AMHEM[:%8XT&$1% "CT '2G445]RDDK(]<****8!1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !7X@_\'O/_)K/P/\ ^R@:C_Z0BOV^
MK\0?^#WG_DUGX'_]E U'_P!(10!Y_P#\&FW_ "E,_:[_ .WC_P!/D]?O]7X
M_P#!IM_RE,_:[_[>/_3Y/7[_ % !1110 4444 %%%% !1110 4444 %>4?MS
M_P#)H_CW_L O_P"AK7J]>4?MS_\ )H_CW_L O_Z&M '=?"[_ ))GX=_[ 5I_
MZ)2MVL+X7?\ ),_#O_8"M/\ T2E;M !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !7X@_\'O/_ ":S\#_^
MR@:C_P"D(K]OJ_$'_@]Y_P"36?@?_P!E U'_ -(10!Y__P &FW_*4S]KO_MX
M_P#3Y/7[_5^ /_!IM_RE,_:[_P"WC_T^3U^_U !1110 4444 %%%% !1110
M4444 %>4?MS_ /)H_CW_ + +_P#H:UZO7E'[<_\ R:/X]_[ +_\ H:T =U\+
MO^29^'?^P%:?^B4K=K"^%W_),_#O_8"M/_1*5NT %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !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 !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %?B#_P '
MO/\ R:S\#_\ LH&H_P#I"*_;ZOQ!_P"#WG_DUGX'_P#90-1_](10!Y__ ,&F
MW_*4S]KO_MX_]/D]?O\ 5^ /_!IM_P I3/VN_P#MX_\ 3Y/7[_4 %%%% !11
M10 4444 %%%% !1110 5Y1^W/_R:/X]_[ +_ /H:UZO7E'[<_P#R:/X]_P"P
M"_\ Z&M '=?"[_DF?AW_ + 5I_Z)2MVL+X7?\DS\._\ 8"M/_1*5NT %%%%
M!1110 4444 %%%% !1110 4444 %%%% !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 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %?B#_ ,'O/_)K/P/_ .R@:C_Z0BOV^K\0?^#WG_DUGX'_ /90-1_]
M(10!Y_\ \&FW_*4S]KO_ +>/_3Y/7[_5^ /_  :;?\I3/VN_^WC_ -/D]?O]
M0 4444 %>4_M4?M=_#O]E+3_  M9^(]$U?Q#XF\>>)8_#_@/P9X<CA?4-=U%
MT>0QQ^?)'%%''%&\DL\LB1QHI);)56]6KY!_X*]_L _&S]LWX?\ @/XI_LD_
M%FV\&_&CX+>+O^$H^&NHZI'OL+RX\ORYK*Z&UML<R!1NVL/EVLI5V( -7]E/
M_@HWXT^+OB+P=X"^/'[+'B?P5J/CW5?$%CX5\16=S9ZAH=W/I<]X);22:&X:
M:VN1!:2.%EB5)?+D,;L%('1_MX_\%$/#7[#2>&](MOV;?BS\7O$WB<W,UIX,
M^#/@]M;U2WL+?RUGU">%77RK99)[>+>3R\Z  \X^2_\ @B-_P4]^&OQO72_V
M"/VN/AG/\.OVA/!OB#7]9T_0]6B(L->EDOM2^UW>CS[BLPC%Q>Q% SG8DC(\
MJK(R=W^WO_P3I_X*<>(_VGM?_;U_X)Y_\%$HO"_BUO#=AI5C\+?$_@^WGT74
M+&S\R063W+LYC,D\US(7\K.Z?&] BLH!]*?LI_MH6W[1_P"SSJG[2'Q&_9X^
M(WP2TK2+F\%[I?QJT./1=0BM+:)9);Z2'S7,5O@OAY"I/E.V-NUCYIH?_!6S
MX?3_  _\)?M*>-O@9XL\+_ _QYK=MIGA7XL:W-:) ?M4ODV-]>68D-Q8V%U)
ML6&XD&1YT+2I"K[A\7?\% _^"F/Q+_;#_P"#9?XX_&G7?AW/X%^).A:S#\.O
MBOX:A9]FD:M'K>GV>HPH22PBD@N0-K$E/M&PL^W<WO?_  5>\ >%='_X-M?&
MG@!+.)M,T7X$Z''81%0%7[(MBUN0.@VM%&1[@4 ?H917C?\ P3J\;^*?B;_P
M3Z^!7Q(\<74L^M>(?@WX8U+6)IR2\EU/I-M+*S9YR7=B<\YKV2@ KRC]N?\
MY-'\>_\ 8!?_ -#6O5Z\H_;G_P"31_'O_8!?_P!#6@#NOA=_R3/P[_V K3_T
M2E;M<9\-?$6JQ?#G0(D\*7;A=$M0'5EPP\E>:V_^$EU?_H4+W_OI: -BBL?_
M (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?
M_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU
M?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]
M_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W
M_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -B
MBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^
M$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_
M^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\
MZ%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\
MH4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI
M: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_O
MI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V
M**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$E
MU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (27
M5_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+
MW_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4
M+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^
MEH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:
M/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_
M (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?
M_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU
M?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]
M_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W
M_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -B
MBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^
M$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_
M^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\
MZ%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\
MH4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI
M: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_O
MI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V
M**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$E
MU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (27
M5_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+
MW_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4
M+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^
MEH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:
M/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_
M (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?
M_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU
M?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]
M_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W
M_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -B
MBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^
M$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_
M^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\ H4+W_OI:/^$EU?\
MZ%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI: -BBL?_ (275_\
MH4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_OI:/^$EU?_H4+W_OI
M: -BBL?_ (275_\ H4+W_OI:/^$EU?\ Z%"]_P"^EH V**Q_^$EU?_H4+W_O
MI:/^$EU?_H4+W_OI: -BBJ.E:K>ZA(Z76B3VH5<AI2,-[<5>H **** "BBB@
M K\0?^#WG_DUGX'_ /90-1_](17[?5^(/_![S_R:S\#_ /LH&H_^D(H \_\
M^#3;_E*9^UW_ -O'_I\GK]_J_ '_ (--O^4IG[7?_;Q_Z?)Z_?Z@ HHHH *\
M1_:C^)/[57PD^*OP]\:?!?X%:K\1/ ;0ZM9?$K0O#NH:?#J=F9!:/8:C;QWL
MT(N?*:*XC>%)0Q2Y+!79%%>W44 ?EE^S[^S/\2?VZ_BW^S5\8+;X%:IX*\+_
M  %^)7C7Q+JGC[Q*UK!?ZQ-<:O?K#HMC!#-),8O,*O<R3+'&/*V1F0EL?5,O
M[:G[<.A_M!>,_@MKO_!*OQOJ>D6.I%/A]X_\+^.=#ETC6K,J-MQ?-=W-M+IY
MW?>C2.XD'.U'P-_U)10!\A2?\$K?#7Q"_P""?'QB_9%^,6MV(\0?'O6M>\4>
M/-8T6%VM++Q!J4RSQR6JR;6DALVALXXRX5I1:!V",Y4>,?&']GW]NC]L#_@F
M?X9_X)-?$'X%ZOX3\1W%AH?A?XI_%>74K&70H]%TRXMVGU'3W2=I[N:]BM$$
M=NT"&-KAQ,80@+?I)10!E^!O!GASX<>"M'^'G@[3EL](T'2[?3M*M$)(@MH(
MUBB09[*BJ/PK4HHH *\H_;G_ .31_'O_ & 7_P#0UKU>O*/VY_\ DT?Q[_V
M7_\ 0UH [KX7?\DS\._]@*T_]$I6[6%\+O\ DF?AW_L!6G_HE*W: "BBB@ H
MHHH **** "BBB@ HHHH **** "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@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "OQ!_X/>?\ DUGX'_\ 90-1_P#2$5^WU?B#_P 'O/\ R:S\#_\ LH&H
M_P#I"* //_\ @TV_Y2F?M=_]O'_I\GK]_J_ '_@TV_Y2F?M=_P#;Q_Z?)Z_?
MZ@ HHHH **** "BBB@ HHHH **** "O*/VY_^31_'O\ V 7_ /0UKU>O*/VY
M_P#DT?Q[_P!@%_\ T-: .Z^%W_),_#O_ & K3_T2E;M87PN_Y)GX=_[ 5I_Z
M)2MV@ 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 **** "BBB@ HHHH **** "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@ K\0?\ @]Y_Y-9^!_\ V4#4?_2$5^WU?B#_ ,'O/_)K
M/P/_ .R@:C_Z0B@#S_\ X--O^4IG[7?_ &\?^GR>OW^K\ ?^#3;_ )2F?M=_
M]O'_ *?)Z_?Z@ HHHH **** "BBB@ HHHH **** "O*/VY_^31_'O_8!?_T-
M:]7KRC]N?_DT?Q[_ -@%_P#T-: .Z^%W_),_#O\ V K3_P!$I6[6%\+O^29^
M'?\ L!6G_HE*W: "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "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** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "OQ!_X/>?^36?@?\ ]E U'_TA%?M]7X@_
M\'O/_)K/P/\ ^R@:C_Z0B@#S_P#X--O^4IG[7?\ V\?^GR>OW^K\ ?\ @TV_
MY2F?M=_]O'_I\GK]_J "BBB@ HHHH **** "BBB@ HHHH *\H_;G_P"31_'O
M_8!?_P!#6O5Z\H_;G_Y-'\>_]@%__0UH [KX7?\ ),_#O_8"M/\ T2E;M87P
MN_Y)GX=_[ 5I_P"B4K=H **** "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 **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ 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 *_$'_@]Y_Y-9^!__90-1_\ 2$5^
MWU?B#_P>\_\ )K/P/_[*!J/_ *0B@#S_ /X--O\ E*9^UW_V\?\ I\GK]_J_
M '_@TV_Y2F?M=_\ ;Q_Z?)Z_?Z@ HHHH **** "BBB@ HHHH **** "O*/VY
M_P#DT?Q[_P!@%_\ T-:]7KRC]N?_ )-'\>_]@%__ $-: .Z^%W_),_#O_8"M
M/_1*5NUA?"[_ ))GX=_[ 5I_Z)2MV@ 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@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "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@ K\0?^#WG_ )-9^!__
M &4#4?\ TA%?M]7X@_\ ![S_ ,FL_ __ +*!J/\ Z0B@#S__ (--O^4IG[7?
M_;Q_Z?)Z_?ZOP!_X--O^4IG[7?\ V\?^GR>OW^H **** "BBB@ HHHH ****
M "BBB@ KRC]N?_DT?Q[_ -@%_P#T-:]7KRC]N?\ Y-'\>_\ 8!?_ -#6@#NO
MA=_R3/P[_P!@*T_]$I6[6%\+O^29^'?^P%:?^B4K=H **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "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 **** "BBB@ HHHH **** "BBB@ HHHH *_$'_
M (/>?^36?@?_ -E U'_TA%?M]7X@_P#![S_R:S\#_P#LH&H_^D(H \__ .#3
M;_E*9^UW_P!O'_I\GK]_J_ '_@TV_P"4IG[7?_;Q_P"GR>OW^H **** "BBB
M@ KQ[]I']O;]D[]DW6M*\+_&_P",>DZ9K.KWEI#;:''<K-?)%<3B!+J2W0F1
M+8.<&4KMX(&2,5[#7XI_M-_'KQ]_P2__ ."E'Q!T_P#;8\ WT/PO^.W[07@S
MQKX+^.T<336.GP:=-;+)I-^X!:)8(8F$:=5",X4I*70 _8GX4_&'X3?';P9;
M_$;X*?$W0/%V@7;,MMK7AK5X;VUD9?O*)869=PZ%<Y!X(%<CX7_;8_9*\:_%
M/_A2OA/]H3POJ'B9K^XL8-,MM41OM-Y;@M<6D,G^KGN(@K&2"-FDC"-N5=IQ
M\I_\%8OB?X6_8#_X)$_M(?M8_LB^([.WN/B-<0:UI&L>&IHS E]K0TS27U"U
MEA.TLRYO!*I^:5V?))R>(_X*&?L_:%\$?^#:>T\,?#S_ (D6K_"/X9>%O$GA
M+6M-Q'<:;K6GRV=R;Z)UY6>23SRSCEOM$F?O&@#]-**\Y_8]^,]]^T=^R1\+
M?VAM3M4@N?'GPYT3Q%<01KA8WO;"&Y90.P!E(KT:@ KRC]N?_DT?Q[_V 7_]
M#6O5Z\J_;@$+?LF>.UN)&6,Z&V]D0,0-Z] 2,_F* .X^%W_),_#O_8"M/_1*
M5NU\6>&O^"B7[4GA_P .:?H.E_\ !+KXFZG;6-E%;V^I6]T!'=QH@595_<'Y
M6 ##D\'J:N_\/*?VLO\ I$_\4_\ P+'_ ,CT ?8U%?'/_#RG]K+_ *1/_%/_
M ,"Q_P#(]'_#RG]K+_I$_P#%/_P+'_R/0!]C45\<_P##RG]K+_I$_P#%/_P+
M'_R/1_P\I_:R_P"D3_Q3_P# L?\ R/0!]C45\<_\/*?VLO\ I$_\4_\ P+'_
M ,CT?\/*?VLO^D3_ ,4__ L?_(] 'V-17QS_ ,/*?VLO^D3_ ,4__ L?_(]'
M_#RG]K+_ *1/_%/_ ,"Q_P#(] 'V-17QS_P\I_:R_P"D3_Q3_P# L?\ R/1_
MP\I_:R_Z1/\ Q3_\"Q_\CT ?8U%?'/\ P\I_:R_Z1/\ Q3_\"Q_\CT?\/*?V
MLO\ I$_\4_\ P+'_ ,CT ?8U%?'/_#RG]K+_ *1/_%/_ ,"Q_P#(]'_#RG]K
M+_I$_P#%/_P+'_R/0!]C45\<_P##RG]K+_I$_P#%/_P+'_R/1_P\I_:R_P"D
M3_Q3_P# L?\ R/0!]C45\<_\/*?VLO\ I$_\4_\ P+'_ ,CT?\/*?VLO^D3_
M ,4__ L?_(] 'V-17QS_ ,/*?VLO^D3_ ,4__ L?_(]'_#RG]K+_ *1/_%/_
M ,"Q_P#(] 'V-17QS_P\I_:R_P"D3_Q3_P# L?\ R/1_P\I_:R_Z1/\ Q3_\
M"Q_\CT ?8U%?'/\ P\I_:R_Z1/\ Q3_\"Q_\CT?\/*?VLO\ I$_\4_\ P+'_
M ,CT ?8U%?'/_#RG]K+_ *1/_%/_ ,"Q_P#(]'_#RG]K+_I$_P#%/_P+'_R/
M0!]C45\<_P##RG]K+_I$_P#%/_P+'_R/1_P\I_:R_P"D3_Q3_P# L?\ R/0!
M]C45\<_\/*?VLO\ I$_\4_\ P+'_ ,CUEZ]_P5;_ &C?#6I:9I&N?\$O/B-:
M7.L71M]-@NM45'NI0NXI&#;_ #MCG H ^VJ*^.?^'E/[67_2)_XI_P#@6/\
MY'H_X>4_M9?](G_BG_X%C_Y'H ^QJ*^.?^'E/[67_2)_XI_^!8_^1Z/^'E/[
M67_2)_XI_P#@6/\ Y'H ^QJ*^.?^'E/[67_2)_XI_P#@6/\ Y'H_X>4_M9?]
M(G_BG_X%C_Y'H ^QJ*^.?^'E/[67_2)_XI_^!8_^1Z/^'E/[67_2)_XI_P#@
M6/\ Y'H ^QJ*^.?^'E/[67_2)_XI_P#@6/\ Y'H_X>4_M9?](G_BG_X%C_Y'
MH ^QJ*^.?^'E/[67_2)_XI_^!8_^1Z/^'E/[67_2)_XI_P#@6/\ Y'H ^QJ*
M^.?^'E/[67_2)_XI_P#@6/\ Y'H_X>4_M9?](G_BG_X%C_Y'H ^QJ*^.?^'E
M/[67_2)_XI_^!8_^1Z/^'E/[67_2)_XI_P#@6/\ Y'H ^QJ*^.?^'E/[67_2
M)_XI_P#@6/\ Y'H_X>4_M9?](G_BG_X%C_Y'H ^QJ*^.?^'E/[67_2)_XI_^
M!8_^1Z/^'E/[67_2)_XI_P#@6/\ Y'H ^QJ*^.?^'E/[67_2)_XI_P#@6/\
MY'H_X>4_M9?](G_BG_X%C_Y'H ^QJ*^.?^'E/[67_2)_XI_^!8_^1Z/^'E/[
M67_2)_XI_P#@6/\ Y'H ^QJ*^.?^'E/[67_2)_XI_P#@6/\ Y'H_X>4_M9?]
M(G_BG_X%C_Y'H ^QJ*^.?^'E/[67_2)_XI_^!8_^1Z/^'E/[67_2)_XI_P#@
M6/\ Y'H ^QJ*^.?^'E/[67_2)_XI_P#@6/\ Y'H_X>4_M9?](G_BG_X%C_Y'
MH ^QJ*^.?^'E/[67_2)_XI_^!8_^1ZR[7_@JW^T;>^++OP1:_P#!+SXC2:K9
M6L=Q=:<FJ*9XHG.%=D^SY53C@]Z /MJBOCG_ (>4_M9?](G_ (I_^!8_^1Z/
M^'E/[67_ $B?^*?_ (%C_P"1Z /L:BOCG_AY3^UE_P!(G_BG_P"!8_\ D>C_
M (>4_M9?](G_ (I_^!8_^1Z /L:BOCG_ (>4_M9?](G_ (I_^!8_^1Z/^'E/
M[67_ $B?^*?_ (%C_P"1Z /L:BOCG_AY3^UE_P!(G_BG_P"!8_\ D>C_ (>4
M_M9?](G_ (I_^!8_^1Z /L:BOCG_ (>4_M9?](G_ (I_^!8_^1Z/^'E/[67_
M $B?^*?_ (%C_P"1Z /L:BOCG_AY3^UE_P!(G_BG_P"!8_\ D>C_ (>4_M9?
M](G_ (I_^!8_^1Z /L:BOCG_ (>4_M9?](G_ (I_^!8_^1Z/^'E/[67_ $B?
M^*?_ (%C_P"1Z /L:BOCG_AY3^UE_P!(G_BG_P"!8_\ D>C_ (>4_M9?](G_
M (I_^!8_^1Z /L:BOCG_ (>4_M9?](G_ (I_^!8_^1Z/^'E/[67_ $B?^*?_
M (%C_P"1Z /L:BOCG_AY3^UE_P!(G_BG_P"!8_\ D>C_ (>4_M9?](G_ (I_
M^!8_^1Z /L:BOCG_ (>4_M9?](G_ (I_^!8_^1Z/^'E/[67_ $B?^*?_ (%C
M_P"1Z /L:BOCG_AY3^UE_P!(G_BG_P"!8_\ D>C_ (>4_M9?](G_ (I_^!8_
M^1Z /L:BOCG_ (>4_M9?](G_ (I_^!8_^1Z/^'E/[67_ $B?^*?_ (%C_P"1
MZ /L:BOCG_AY3^UE_P!(G_BG_P"!8_\ D>C_ (>4_M9?](G_ (I_^!8_^1Z
M/L:BOCG_ (>4_M9?](G_ (I_^!8_^1Z/^'E/[67_ $B?^*?_ (%C_P"1Z /L
M:BOBKQ/_ ,%3OVEO!V@77B?Q+_P2U^)-A8647F75Y>ZBL<42_P!YF-OA1[U:
ML?\ @IM^U3J-E#J%E_P2F^*$L,\2R12Q7H975AD$'[/R"#G- 'V717QS_P /
M*?VLO^D3_P 4_P#P+'_R/1_P\I_:R_Z1/_%/_P "Q_\ (] 'V-17QS_P\I_:
MR_Z1/_%/_P "Q_\ (]'_  \I_:R_Z1/_ !3_ / L?_(] 'V-17QS_P /*?VL
MO^D3_P 4_P#P+'_R/1_P\I_:R_Z1/_%/_P "Q_\ (] 'V-17QS_P\I_:R_Z1
M/_%/_P "Q_\ (]'_  \I_:R_Z1/_ !3_ / L?_(] 'V-17QS_P /*?VLO^D3
M_P 4_P#P+'_R/1_P\I_:R_Z1/_%/_P "Q_\ (] 'V-17QS_P\I_:R_Z1/_%/
M_P "Q_\ (]'_  \I_:R_Z1/_ !3_ / L?_(] 'V-17QS_P /*?VLO^D3_P 4
M_P#P+'_R/1_P\I_:R_Z1/_%/_P "Q_\ (] 'V-17QS_P\I_:R_Z1/_%/_P "
MQ_\ (]'_  \I_:R_Z1/_ !3_ / L?_(] 'V-17QS_P /*?VLO^D3_P 4_P#P
M+'_R/1_P\I_:R_Z1/_%/_P "Q_\ (] 'V-17QS_P\I_:R_Z1/_%/_P "Q_\
M(]'_  \I_:R_Z1/_ !3_ / L?_(] 'V-17QS_P /*?VLO^D3_P 4_P#P+'_R
M/1_P\I_:R_Z1/_%/_P "Q_\ (] 'V-17QS_P\I_:R_Z1/_%/_P "Q_\ (]'_
M  \I_:R_Z1/_ !3_ / L?_(] 'V-17QS_P /*?VLO^D3_P 4_P#P+'_R/1_P
M\I_:R_Z1/_%/_P "Q_\ (] 'V-17QS_P\I_:R_Z1/_%/_P "Q_\ (]'_  \I
M_:R_Z1/_ !3_ / L?_(] 'V-17QS_P /*?VLO^D3_P 4_P#P+'_R/1_P\I_:
MR_Z1/_%/_P "Q_\ (] 'V-17Q+KW_!5O]HWPUJ6F:1KG_!+SXC6ESK%T;?38
M+K5%1[J4+N*1@V_SMCG K4_X>4_M9?\ 2)_XI_\ @6/_ )'H ^QJ*^.?^'E/
M[67_ $B?^*?_ (%C_P"1Z/\ AY3^UE_TB?\ BG_X%C_Y'H ^QJ*^.?\ AY3^
MUE_TB?\ BG_X%C_Y'H_X>4_M9?\ 2)_XI_\ @6/_ )'H ^QJ*^.?^'E/[67_
M $B?^*?_ (%C_P"1Z/\ AY3^UE_TB?\ BG_X%C_Y'H ^QJ*^.?\ AY3^UE_T
MB?\ BG_X%C_Y'H_X>4_M9?\ 2)_XI_\ @6/_ )'H ^QJ*^.?^'E/[67_ $B?
M^*?_ (%C_P"1Z/\ AY3^UE_TB?\ BG_X%C_Y'H ^QJ*^.?\ AY3^UE_TB?\
MBG_X%C_Y'H_X>4_M9?\ 2)_XI_\ @6/_ )'H ^QJ*^.?^'E/[67_ $B?^*?_
M (%C_P"1Z/\ AY3^UE_TB?\ BG_X%C_Y'H ^QJ*^.?\ AY3^UE_TB?\ BG_X
M%C_Y'H_X>4_M9?\ 2)_XI_\ @6/_ )'H ^QJ*^.?^'E/[67_ $B?^*?_ (%C
M_P"1Z/\ AY3^UE_TB?\ BG_X%C_Y'H ^QJ*^.?\ AY3^UE_TB?\ BG_X%C_Y
M'H_X>4_M9?\ 2)_XI_\ @6/_ )'H ^QJ*^.?^'E/[67_ $B?^*?_ (%C_P"1
MZ/\ AY3^UE_TB?\ BG_X%C_Y'H ^QJ*^.?\ AY3^UE_TB?\ BG_X%C_Y'H_X
M>4_M9?\ 2)_XI_\ @6/_ )'H ^QJ*^.?^'E/[67_ $B?^*?_ (%C_P"1Z/\
MAY3^UE_TB?\ BG_X%C_Y'H ^QJ*^.?\ AY3^UE_TB?\ BG_X%C_Y'H_X>4_M
M9?\ 2)_XI_\ @6/_ )'H ^QJ*^.?^'E/[67_ $B?^*?_ (%C_P"1Z/\ AY3^
MUE_TB?\ BG_X%C_Y'H ^QJ*^7_@]_P %"?BCXV^)6C?#WXN?L1>-/AVFOWZV
M>F:EK]VICFE*LQ !C0G 7)QGJ*^H* "BBB@ HHHH *_$'_@]Y_Y-9^!__90-
M1_\ 2$5^WU?B#_P>\_\ )K/P/_[*!J/_ *0B@#S_ /X--O\ E*9^UW_V\?\
MI\GK]_J_ '_@TV_Y2F?M=_\ ;Q_Z?)Z_?Z@ HHHH **** "OS[_;'_;+_8M_
M:Y^&NK_LQ_'?6_!]G>>$_P!HS2?#?Q"^'WC/4X(VETN#7D1+YXKC87M+BT$<
MXF ,:EG7>3&6K]!*Y'XK? 7X.?'&+2X?BU\.]-UT:+J]KJFEM>PY:WNK:99H
M7# @D!U!*$E&QAE8$B@#\A_V>?\ @G-XW_:5_P""2'[9G[&'[.^L:KJ?P:US
MXA7=U^RF==NW=;J&RE@O@ME-,<MITM];K##/G9)F:7+>8S-ZC^V1^U#IG[9/
M_!##0_V3O@C>VVI_'?XK^&=!\"CX7BX"ZOI6LQ3VL.LI?6O^MLXK-8+MIII4
M5$54)($BY_5155%"(H  P !P!5.V\.>'K/6KCQ)9Z#91:C>1K'=W\=JBSSHO
MW5=P-S =@3Q0!S7[.GP=TK]G?]GSP)^S_H5UY]CX&\&Z7X>LY]FWS(K*TBMD
M;';*Q XKLJ** "O*/VY_^31_'O\ V 7_ /0UKU>HKZPL=4M)-/U.RBN+>5=L
ML$\8=''H5/!% &/\+O\ DF?AW_L!6G_HE*W:;%%%!$L$$:HB*%1$& H'0 =A
M3J "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH *\+_:P_P"2V? __L>Y?_29J]TJ"[TO3+^>"YOM.@FD
MM9-]M)-"K-$V,;E)'RG'<4 3T444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5X7X!_Y2">/_ /L1
M-*_]&-7NE01Z7ID6H2:M%IT"W<L826Z6%1(ZCHI;&2!Z4 3T444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110!Y1^W/_P FC^/?^P"__H:UW7PN_P"29^'?^P%:?^B4K8OK"QU2TDT_
M4[**XMY5VRP3QAT<>A4\$4^***")8((U1$4*B(,!0.@ ["@!U%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 >%_M8?\ );/@?_V/<O\ Z3-7NE07>EZ9?SP7-]IT$TEK)OMI)H59
MHFQC<I(^4X[BIZ "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** /"_VL/^2V? __ +'N7_TF:O=*
M@N]+TR_G@N;[3H)I+63?;230JS1-C&Y21\IQW%3T %%%% !1110 5^(/_![S
M_P FL_ __LH&H_\ I"*_;ZOQ!_X/>?\ DUGX'_\ 90-1_P#2$4 >?_\ !IM_
MRE,_:[_[>/\ T^3U^_U?@#_P:;?\I3/VN_\ MX_]/D]?O]0 4444 %%%% !1
M110!Y[^U)^TGX+_9)^!WB'X^_$'PQXHU?2?#>EW%_?67A'P[-J5VT,$+S2,$
MC&V-1'&Y,DK1QC&"X) -?]CS]I?PW^V3^R_X'_:E\'>';[2=*\=^'X=7T_3=
M39#<6\4H)5)"A*[L=<$CW-97_!0G_DP7XX?]D?\ $W_IJN:\M_X(:0QW'_!'
MG]GFWF7*/\+=/5AG&04(/2@#S+]H3_@OCX4^ PO_ (IV_P"P'\=O%'P3T?4#
M:ZK\;M$\-0C2&02>6UY:QRRK+<V0?@76$B?JA<%"WV[\)?BM\/?CI\,/#_QF
M^$WBBWUOPSXIT>WU30=6M<^7=6L\8DCD 8!ERK#*L RG((!!%>*_\%'];\,?
M"K]@'QC\'_!G@&#4]2\8^$KCP%\-_ 6GP(HU74K^TDL[.PBCX5844F20_=AM
MX)I&PD;$<]X!\!:K_P $I/\ @D;H7PG\+WL6O>)_AS\.K30]")R(M8\37)2V
MM84#<K'/J=S%&H.2%E4<XH Z+5O^"@UE8?#;7O'^@? CQ/XLO/\ A8FK^%/A
MWX5\%F.]U/Q:^FRFVN[Q5E\F&RMX[N&\C:6:7REC@C?S"UQ'%7-?L&_\%6O!
MW[9?QQ\<_LG>/_V>O''P@^+OP^L8=1USP%XZA@:2;3I614O+:>W=HYX@TD0)
M&!^]0J7!)'MOP$^#MA^S'^SAX4^$?AVRN=>G\%^$X-/6:(QK=:K/'$OG2EY7
M1?-N)E,C,[J"[DL1UKX-_8A_:HM_$W_!<WXJ^$/VR_V0/$7PE^-GBKX>6MA\
M*Y=2UJUU&PU/P=82M-)'%/:C8US+<--<R$-(H2!8LHUNWG 'U/\ \%$_^"EO
MPC_X)O\ @?1?&/Q1^''C;Q!_PD/B"QT;3AX;\/N]I%<W<K1Q?:+R3;;PC*,2
MN]I, 8C.Y<_1M?GC_P '-G_*.K0?^RX>#_\ TX"OOWQAXM\.^ ?"6J>._%^J
MQ6.DZ+IT]_JE[,<);V\,;222-[*BL3]* .(\&?M"P>-?C;\2_A?IWA*8Z5\,
M[;2HM3\06\SSO<:K=6TE[-8);1QEMT-G)ITVY69I#?JH0;,OY]^QM_P4C^%'
M[;7QX^,OP'^''P[\8:)>_!34],T[Q#<^+](^P/=W%XMTX\FW=O-5%6VSNE5&
M;S!A0 "=G_@GEX7\0:?^S'IOQ.\<Z5+9^)OB?J-YXZ\26MR,36L^JRFZALY/
M]JTM&M;+O\MHO)ZGY@_X)6@#_@L7_P %$<#_ )G#P%_Z9;J@#ZQ_;7_;%\)_
ML3?!^+XHZ]\,/&OCO4=1UB#2O#?@3X<:"=4UW7KR17E:&TM0R^:8[>&XN'Y&
MV*WD;G !Y?\ 8._;WU_]N*+Q+=:G^PS\=/@W!X=:U6.3XU>"ET1M5>;S"1:1
MF9WE$8C&]MH4>8@!)) X#_@IG_P3Q_:]_:Z^(_@GXZ?LC?\ !034/@UXH^&^
MEWZ>&K%?",&HV-Y=W14327)D?HT<<<7,<FQ?,PK>8RFI_P $B?VZ_P!I[]H>
M]^*7[(G[>WP_TS0?CI\"-9L;#QA=: "--U^QO8I);#5+8'[HF2&0LH 'W&VQ
M[S%& ?:%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
M?[.NG>!/BE^PSXL\>_L[3>+=%O\ XY>+?#VO6*3V^EVE]!=I;P6N]I]CW,,
MEF=8E$:21AT,RS)^@WPR\?\ @WXL?#?P]\4_AUJL=]X>\2Z'::KH5]"I5+BR
MN(4F@D4'H&C=2![T >1_\$^?V_\ X9?\%&OA3XD^,7PG\$>)= TOP[X\U#PM
M):>+;)+:]DN+-(3+(T*._E#=*5",=XV?,%)VCM_VB_CJWP)\/^'+C3/"AU[6
M?%GCC2/#6A:,+[[,9Y;RY59YC)L?"VUHMW>. I+):.!@D$?('_!O!''#\!?V
M@(HD"JO[7WCX*JC  %U!@ 5[_KC/\:?^"C6B^'E3S=$^"/@>36[MNJ'Q#K9E
ML[3![20:=;:EN7KLU:(\ C(!6_;,_P""E'PE_8J^*7PI^$'COX;^-]6U/XN_
M$G1_!>@ZCI7A]UTNSO-0N$B1KB]F*1?*K/)Y<1DD(B8;5&2/1?VL/VEO!G[(
M/[/_ (B_:%\>:!K>L66@P1"'0O#-A]JU+5KN::.WMK*TAW+YL\T\L<2)D99Q
MR!S7QK_P7]_Y&K]A[_L^_P !?^AW-?H-?Z/I&JS6MQJFEVUS)8W/VBR>X@5S
M;S;&3S$)'R-L=UW#!P[#H30!^=_CC_@X?A^&/AC_ (3;XE_\$?OVR?#FCBZM
M;9]5U_X56UE;QS7,\=O!&TDUZJHTDTL<:@D$NZKU.*_1:WDDE@266!HF9 6B
M8@E"1T)!(R/8XKY&_;JB_P"&A_VY/V<?V++4F;3=+U^Z^+7CZ%.=MAH02+2X
MI >"LNK7EK(!SG[ _I7UY0 4444 %%%% !1110 4444 %%%% !1110 4444
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
MW[+GB?5/AK>"#QCKB6WAKP+(1G9KNJW$>G:?(0.2D=S<Q2OCI'&[$@ D=O\
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
M7[1'P9U+P7XJ\#^$K?1M7T[4-5TZ]CFDBW*9(I;&YG1D(P?F*M\V,<5]-T4
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
M?]5\<>(;SQIHFJL+37=)L(+:"RO4N)/,DU"\@.XJF%"!^2,X&37W)10!YO\
M&3XL?&_PE^SKJOQ/^#O[+.N^+O',5@6T7X:7'B'2=/N;BY+;$2:[DNC:0QCA
MW=99"$!VJ[X2O@[X(?M$?\%N?A%IFN>+-9_X(+W7B7XB^+&6X\5>,;_]IOPO
M"EW,@806\4(9S;6%N'98;57;:K.[/)-+--)^G-% '@GPM^&WQB\5_M=O\8OC
MEHUNH\#?"O3_  WX?O[.+9:WVK:A(MWKUU;(S,R0$VFE0Q[CN!BG7)!R:_QD
M_:^_:2^$/[2<?PITW_@G1\0_''@6[T:*>Q^)'@77](G'VUBP>UGLKRYMF@5
M%_?&0AMXPN 2/H.B@#YI_8I_95\8^"?VCOC=^W1\7/"L/AOQ;\<-0T2,>$8;
MZ.Z?1=(TBQ-I9I<S0EHI+R0O-+-Y3/$FZ.)))1&9'\B_;@^!_P"U7X__ ."P
MO[*/[47PR_95\2^(O 7P7MO&47B_7[+Q#H,&\ZQI(L[<V\%UJ,4\@209DRBX
M7[N\\5]YT4 >+_&?X=>-OBU^U=\)8+K0+A?!'@1-5\7:I?NR^5<:X(%T[3;0
MKG+A8K[4;D\822VMFY."OJWB_7=4\->'+K6]%\&:EXAN;= T6CZ/+:I<W)R!
MM1KJ:&$'O\\BCCKGBM*B@#X=_P"#?7]G3]IC]C__ ()YZ/\ LT_M5? 35/!'
MB?0_$.LW<BW6N:5?V]U%=ZA-<QF*2PO)^B2@,'"<@XR,$^J_M>^)OVN?C=X1
MUC]F[]CGP3J7A+4M>272]7^,WBJ)+:P\,VKY2>YL;8R"ZU"]V%O("QI;ARKO
M. H1_HVB@#R[]C#]D/X._L(?LS^%/V5O@1I4MMX<\*6'D0373AKB]G=FDGNI
MV  ::65WD8@ 9;"A5 4>HT44 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %?!?Q0^"'[5FK?\%YO 7[8NA_LI>)KSX9>'/@KJ'@S4O%4?
MB'0$'VV>_EN$F2V?45N6@";<GRP^7^X<&OO2B@#Y3_X*A_%/_@HMX8\(:)\.
MO^"?_P"QQK?Q"EUZY'_"9>)M+^(>B>'Y=(TT-B2WLY=0G#K>S+E5G$+I I+C
M=)M"\?\ L??'#_@II-XQ\$_L_:[_ ,$<]/\ @%\+=(C9-6\4W7QKT;Q%]BLH
M('=+:WLK$B:2>>8(AF=FV[Y)&WL:^W** /&?V$?AKXV\"_ I_%WQ8T.;3?&O
MQ"\1ZCXQ\7Z?<NK36%UJ$YDAL)&4E6:SLQ:6.02"+,8)ZUY7X9_;'_;C^-/@
M+Q5\,M?_ ."4/C?P9XWDCNM.TZ7Q)XPT.[\*LKAHX[J>_BN1.\'(:2.&TEDP
M<*'R2/KJB@#QW]A3]E#0OV!_V*_ /[*'A'4+G7HO 7AA+-[Q8UBDU.ZRTMQ*
MJN^V/S9WD949\*'"EL#=7SE_P2V^!7[4_P &OVWOVL/B=\;_ -E[Q%X2\-_%
M_P")-IKW@S6;[Q!H=TDEK!;2PD31V6H331.QVL!L(PXR000/N^B@#QC]FKX>
M^-_^%U?&#]H+XF>')M-U#Q3XI@T/PS;W)4R1^&](B:"T)VD_+->3ZK>)T_=W
MR9 (.?E;]J?XQ_\ !6+Q3^UH\^@?\$:-8^(OPH\#:C'<>!;2Y^.WA;1X]9U2
M%R5UF\@DFF=UC(5[2!]GE-_I$B&<0BU_1"B@#Y$\/^!_VK?^"FG[)OQB^!/_
M  41_9(M/@9H_C31G\.^'?#-OXVLO$FH1JUNS/J[W5DP@XGDA\J# 96LW9RR
MR+CQ'QK^SY^WM\>/^"5FB_\ !(3Q1\#M1T'Q>= TKP/XR^+DFH64OAR/P_8R
MPQR:M;,L_P!INIKFRMPJVIA1UFG;S?+1-[?I310!@?"GX:>$O@Q\+O#?P>\
MV'V30O">@6>C:+:DY\FTM8$@A3/?"(H_"OQ@_P"#WG_DUGX'_P#90-1_](17
M[?5^(/\ P>\_\FL_ _\ [*!J/_I"* //_P#@TV_Y2F?M=_\ ;Q_Z?)Z_?ZOP
M!_X--O\ E*9^UW_V\?\ I\GK]_J "BBB@ HHHH **** "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 **** "BBB@ HHHH **** "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@ K\0?\ @]Y_Y-9^!_\ V4#4?_2$5^WU?B#_ ,'O/_)K
M/P/_ .R@:C_Z0B@#S_\ X--O^4IG[7?_ &\?^GR>OW^K\ ?^#3;_ )2F?M=_
M]O'_ *?)Z_?Z@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "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 **** "BBB@ HHHH **** "BBB@ HHHH ****
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
MT>ZT_099VFOY[9#M:X%M"'E\D-\IEV[ >,YXKT^OR#^)?[<OB3_@BK_P5_\
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
M0=7\9:3IL,VZ)Y&EN+TR26UN3M58XHI+F23?N*QHKNH!]SUY?^TK^VG^RO\
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
M\?L+?$G]K_5-+BOY/!N@>;I6G3L1'=ZC/+';6<+D<A&N9H58CD*6(Z5\.?\
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
M[(MY:_$_PY\88/AS)\"]0\:Q1^()=4?F0G-MY<:QQK<3LS'RQ!8W<AD7R2I
M/OFBJ?A^XUVZT*SN?%&EVMEJ4EK&U_9V5ZUS#!,5!=$E:.,R*&R Y1"P&=JY
MQ5R@ HHHH **** "BBB@ HHHH **** "OQ!_X/>?^36?@?\ ]E U'_TA%?M]
M7X@_\'O/_)K/P/\ ^R@:C_Z0B@#S_P#X--O^4IG[7?\ V\?^GR>OW^K\ ?\
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
MGQ-^UH/AQI'Q%'@KX;^&+*PATF+9J$UJO,MPV"5))/"# _WBV>E>65].W_\
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
M"Y)&:_B[]H[X!Z=_P=(:'I]]\8_#,+VO[']UH5TTFN6X2'5#XC:Y^PNQ?"7
M@C:4Q'#A,'&"*_32B@#\OOV./'FF_P#!/C_@MA^U5\)OVN/$EKX7TS]H*_TG
MQK\(_&/B"[6UT[6H[:&:.[T]+F4B/[3#YZ*(20^V!F VLA,7P5T/PM>?MJ?M
M[?\ !3Q/%NF:;\(/$_@C2_"OACQ?=7J0Z?XCNM/T1(KZ]@F8A)H(YT6V29"R
M2N) C'::_3;Q+X2\*^,]._L?QAX9T_5K02!Q:ZE91SQ[AT;:X(R,GGWJ[;V\
M%I EK:P)%%$@2..-0JHH&  !T ':@#X._P"#=;XR?":^_P""*'P=U"W^)6A>
M3X5\,W-MXGD?585&D2I?76Y;G+?N#CYAOVY4AAP0:^;/^"-7QQ^#&E_\&[?Q
M@EU+XL^&[<:8?B$-0\_6H$-L;@W;VX<%LJ95=2@/W]PVYS7[#T4 ?B?XG^+_
M ,)U_P"#-J'2#\3O#_VM_A/:Z2MI_;,'FF_&IQYM F[/G <F/&X#G%>N_&?_
M (*2^#?A]X]_8_\ V>O'/[0%G\.?@7\0?@X=0U_XOZ-J*1'5+ZVLX430H=53
M/]FJ2JO--$R3G?%&DD))8_JG5;4M'TC6%A75]*MKH6\ZS0"Y@5_+D7[KKN!P
MPR<$<B@#\KO^"*WQ)^!OAC_@KK^VU\*/ :ZS8?\ "3:UX-U#PII6K:1J0O+F
MPAT>Z>:^F-VAF2-FEC;S[@@R-=1?,S3)NC_X-M/VH?@/\/\ _@CA8? 7QQ\1
M+/2/%7PO@\52?$C3-35[?_A&,ZU=M&E])( EO)()T\M&8-)MDV@^5)M_5F*P
ML8+N;4(+*%)[A5$\Z1@/(%SM#'J<9.,],FDM=/L+%IGL;&&%KB4RSF*(*9'(
M +-CJV !D\\"@#\#/A]\-?B%^U!_P:.?"NT_9<6/Q;XJ^$?C(^*=?\&Z//YU
M[/%9>(=3EDMFAC)</Y4JW*H1N=(@4#%DS]>_\%>OVD/V?O\ @JQ_P2.'P%_8
MS^(>A^-_''QVU/PU:^ _"VG:A'-J%I,NKV5U=S7D$9:2SCM((9S<22*JQ;=K
M$;@#^GE9FD>"_!WA_5+O7-!\)Z997NH-NO[RTL(XI;DYSF1U +G//)- 'YF?
M%;QW\*OAK_P<>_LV_#C5_BWHCW>A_LVZOH5P]WJL*2F\,C^5%(I?*2RK&S*A
M^9NV:UOV2_B_\*=;_P"#EG]IG2-&^)F@W5S=_!WPM9VEO;ZO"[SW,"HT\* -
M\\D8=2ZC)7/(%?IA10 5^4'_  4)_:$^!6A_\'+'[%<>L_&#PU:CPSX8\:6W
MB*2?6X%33)[O2KZWMHKABV(7DF'EJKX)8@=Z_5^B@#XQ_P""^GP2^,'[0W_!
M+'QWH?[//A@^)O$>C7NC>)M/\-PVXN!K<.G:E;7LML(QGSMT43NL:@F0HJ $
ML!7BG[+7_!2+_@BM^VIIG@W0/V7/V3_!&N?&'7;JU,7PQ?X1Q17WANZ61!<W
M5Y=?8O(M[>T!>5KA7^8(%CW2NL9_3FL[2?!_A+0=4O-;T/POIUE>ZB^_4+RT
MLHXY;IN3F1U +GD\DGK0!^3?[-G[>'PA_P""/G_!2_\ :J_9S_X**>)+GP+H
M7Q;^)LOQ*^%OC[4]-N9M-UFVNXU6:T$L4;[6A"Q1C(V[HI5)!$8?2_X.(/VI
MO"?Q\_X(&?$SX@BV;P_I7C+Q-HB?#*V\1*]AJ/B/3H=8TYS>K9W 29 Y2XF1
M"N[[,(I6";RJ_JGK_A+PKXK6W7Q1X9T_4A:3B>T&H64<WDRCHZ;P=K#U'-:%
M 'Y@?\%UOVA?@+??$?\ 84\4V/QI\*3Z:_[67AC6UOH/$%N\1TQ3*C7VX/C[
M.K$!ION*3R15KP_\:O@[<_\ !U;J*V_Q6\./Y_[%J:) 4UJ B34SXGAN!9+\
M_P TYA_>^4/GV?-C'-?IK10!^-'PHTC1?VP?VH_^"LO[-'P+^*V@W/BKXD^'
MM#L/!T5IKD!&I2CP]?6[HC!B'C$Q6"9ER(_,^;!(KU7]C']OC]GB[_X(-_\
M"E?BSXFL-$^(GP[^#US\-?%?PGU9EB\0?VS:6#Z9;V"Z<W[^::[VP^4J(QD,
M^T?,& _4*LQ_!?@Z3Q,OC5_">F-K*1>4NK&PC-T$QC:)<;\8)&,XYH _$_\
M;S^$-Y^P-_P;;_LZ?LN_M$>+M/TGQCIGC_PO=ZEI6I:E&LT$DFJS:C<0 %OF
M%JDQC=ERJB+KC!KZ%_;4\;VO[*W_  74^ __  4H\>^(;:3X$^//@_<_#*_\
M?172RZ5X=U*2]N+VVFN+A28X8+AY((UF8[<K(68*G'Z?5!J>EZ9K>GS:3K.G
M07=I<1E+BVNH5DCE4]596!##V- 'YZ?%'P=H7[:?_!>;X _'/]GGQ/8Z]X<_
M9_\ A[XDNOB)XLT"[2YL4N=4MVM+#2#<Q%D:Y(EFN6AR66$;F"^8A;YB^'G[
M</[%W[''QT_;$_9C\(_MY>&/@WI?CCXO:Y)<>%OBG\/]5N]0T76;BVA@U+6+
M)[=HH9K2>3)M[=VSLMHY/,VR>6/V@TOPYI'AK0AH'@_2K+2K>*-A:V]G9K'#
M"QR<B--HQDY(&,U^>?[.?PY_X*X_LS^#IO@'\:_V!_@W^T%+_;]_?O\ & _%
M&/1I-::[NY+@W%_9W>FW$B3#>JD1;D1(D2-2J+0![O\ \$XOA/\ L!^(/^":
M&@?LL?LE_$O1_BC\'++PU>>%K^_@U)+H:CYXD:_CNMF/*EE:YDD>(JA43C"A
M2M?)?_!(GX2?M,:=^T __!.;]H;2[R]\$_L1>+-1N?"?BB_;</$R:G;E?#)(
MP QM-.N=3+J-PC>2R PT6:^@O$WP-_X*!?LE_"'6/B5^PK\!/@EK/Q3^(WQ%
ML]5^('A&6YGTKP_ING)8+:>78O&(6GG400%[F94:5I)7$( CA3WK]C?X#^//
M@I\/M7USXU^(-+U?XC^/?$D_B;XAZGH<,B6)U"6.*".UM1+^\-M:VEO:VD3/
M\[I;!V"L[  'KE?DAX(_:%^ MQ_P=I^)]2A^-/A5K:?]E^/0H+H:_;^5+JG]
MH6<_V)7W[6G\H%_*!+8!..#7ZWT4 ?F5^QS\:O@[+_P<;_M>VT?Q6\.,]S\-
M/!T5LHUN#]\]K9*;I4^?YC#N'F <IGYL5\H^%_"^I?MD_L&_\%3OV>OV7?%^
MG^(/&VO?M(Z[K^A:+H6HQSW6K:;!?V5RYMT0DS)/':SPH4R'9@H.2*_>.B@#
M\7?V_/\ @JI^QI^U_P#\&X'B[PC\/_C!HZ?$&3X<Z)IVN_#-92=:T:^M+VPC
MNUGLP#+#;QR1N!<NJPD%/GW.%K4_;C^.WP5_9[_;7_9I_P""H7[0GP?7QW^S
M7XN^ A^'?B;7;_P>=3M_"E\UY'?07\EM+$Q4NP6+<JEBD<X3>P"/^O"> ? L
M5U?7T?@K25GU.5)=2F738@]VZ,&1I3MS(58 @MD@C(J_J>EZ9K>GS:3K.G07
M=I<1E+BVNH5DCE4]596!##V- 'QM^R9^V'_P2Y\9:MXK_:/_ &/O OP]T;X<
M^$/"4P\>?'"P\&1^'[*"9I8'CTR.YEMH6N@(XWFG"DI$RVBG<\@"?%/[2WQ#
MD_94^-?A'_@Y_P#AY#X8?P#X_P!0MO#GCGP39I;&]O\ P9=^3;6.L1R%LR:P
M'B$TL*$,D316S8\BYD?]G-&T31O#FEPZ)X>TBUL+*W7;;V=E;K%%$,YPJ* %
M&23P.]6J .;^$/QA^%OQ]^'&D?%[X+>/=+\3>&==LTNM)UK1[M9H+B)@""&4
M\$9P5.&4@@@$$5TE%% !1110 4444 %%%% !1110 4444 %?B#_P>\_\FL_
M_P#[*!J/_I"*_;ZOQ!_X/>?^36?@?_V4#4?_ $A% 'G_ /P:;?\ *4S]KO\
M[>/_ $^3U^_U?@#_ ,&FW_*4S]KO_MX_]/D]?O\ 4 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !7X@_\'O/_)K/P/\ ^R@:C_Z0BOV^
MK\0?^#WG_DUGX'_]E U'_P!(10!Y_P#\&FW_ "E,_:[_ .WC_P!/D]?O]7X
M_P#!IM_RE,_:[_[>/_3Y/7[_ % !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 5^(/_![S_R:S\#_ /LH&H_^D(K]OJ_$'_@]Y_Y-9^!_
M_90-1_\ 2$4 ?@Y\>?B;\2?AE^UC\4K_ .&_Q!USP]/=>/-8CN9M#U::T>5!
M?S$*QB92P!YP:P_^&L/VIO\ HY7X@?\ A97W_P =HHH /^&L/VIO^CE?B!_X
M65]_\=H_X:P_:F_Z.5^('_A97W_QVBB@ _X:P_:F_P"CE?B!_P"%E??_ !VC
M_AK#]J;_ *.5^('_ (65]_\ ':** #_AK#]J;_HY7X@?^%E??_':/^&L/VIO
M^CE?B!_X65]_\=HHH /^&L/VIO\ HY7X@?\ A97W_P =H_X:P_:F_P"CE?B!
M_P"%E??_ !VBB@ _X:P_:F_Z.5^('_A97W_QVC_AK#]J;_HY7X@?^%E??_':
M** #_AK#]J;_ *.5^('_ (65]_\ ':/^&L/VIO\ HY7X@?\ A97W_P =HHH
M/^&L/VIO^CE?B!_X65]_\=H_X:P_:F_Z.5^('_A97W_QVBB@ _X:P_:F_P"C
ME?B!_P"%E??_ !VC_AK#]J;_ *.5^('_ (65]_\ ':** #_AK#]J;_HY7X@?
M^%E??_':/^&L/VIO^CE?B!_X65]_\=HHH /^&L/VIO\ HY7X@?\ A97W_P =
MH_X:P_:F_P"CE?B!_P"%E??_ !VBB@ _X:P_:F_Z.5^('_A97W_QVC_AK#]J
M;_HY7X@?^%E??_':** #_AK#]J;_ *.5^('_ (65]_\ ':/^&L/VIO\ HY7X
M@?\ A97W_P =HHH /^&L/VIO^CE?B!_X65]_\=H_X:P_:F_Z.5^('_A97W_Q
MVBB@ _X:P_:F_P"CE?B!_P"%E??_ !VC_AK#]J;_ *.5^('_ (65]_\ ':**
M #_AK#]J;_HY7X@?^%E??_':/^&L/VIO^CE?B!_X65]_\=HHH /^&L/VIO\
MHY7X@?\ A97W_P =H_X:P_:F_P"CE?B!_P"%E??_ !VBB@ _X:P_:F_Z.5^(
M'_A97W_QVC_AK#]J;_HY7X@?^%E??_':** #_AK#]J;_ *.5^('_ (65]_\
M':/^&L/VIO\ HY7X@?\ A97W_P =HHH /^&L/VIO^CE?B!_X65]_\=H_X:P_
M:F_Z.5^('_A97W_QVBB@ _X:P_:F_P"CE?B!_P"%E??_ !VC_AK#]J;_ *.5
M^('_ (65]_\ ':** #_AK#]J;_HY7X@?^%E??_':/^&L/VIO^CE?B!_X65]_
M\=HHH /^&L/VIO\ HY7X@?\ A97W_P =H_X:P_:F_P"CE?B!_P"%E??_ !VB
MB@ _X:P_:F_Z.5^('_A97W_QVC_AK#]J;_HY7X@?^%E??_':** #_AK#]J;_
M *.5^('_ (65]_\ ':/^&L/VIO\ HY7X@?\ A97W_P =HHH /^&L/VIO^CE?
MB!_X65]_\=H_X:P_:F_Z.5^('_A97W_QVBB@ _X:P_:F_P"CE?B!_P"%E??_
M !VC_AK#]J;_ *.5^('_ (65]_\ ':** #_AK#]J;_HY7X@?^%E??_':/^&L
M/VIO^CE?B!_X65]_\=HHH /^&L/VIO\ HY7X@?\ A97W_P =H_X:P_:F_P"C
ME?B!_P"%E??_ !VBB@ _X:P_:F_Z.5^('_A97W_QVC_AK#]J;_HY7X@?^%E?
M?_':** #_AK#]J;_ *.5^('_ (65]_\ ':/^&L/VIO\ HY7X@?\ A97W_P =
MHHH /^&L/VIO^CE?B!_X65]_\=H_X:P_:F_Z.5^('_A97W_QVBB@ _X:P_:F
M_P"CE?B!_P"%E??_ !VC_AK#]J;_ *.5^('_ (65]_\ ':** #_AK#]J;_HY
M7X@?^%E??_':/^&L/VIO^CE?B!_X65]_\=HHH /^&L/VIO\ HY7X@?\ A97W
M_P =H_X:P_:F_P"CE?B!_P"%E??_ !VBB@ _X:P_:F_Z.5^('_A97W_QVC_A
MK#]J;_HY7X@?^%E??_':** #_AK#]J;_ *.5^('_ (65]_\ ':/^&L/VIO\
MHY7X@?\ A97W_P =HHH /^&L/VIO^CE?B!_X65]_\=H_X:P_:F_Z.5^('_A9
M7W_QVBB@ _X:P_:F_P"CE?B!_P"%E??_ !VC_AK#]J;_ *.5^('_ (65]_\
M':** #_AK#]J;_HY7X@?^%E??_':/^&L/VIO^CE?B!_X65]_\=HHH /^&L/V
MIO\ HY7X@?\ A97W_P =H_X:P_:F_P"CE?B!_P"%E??_ !VBB@ _X:P_:F_Z
M.5^('_A97W_QVC_AK#]J;_HY7X@?^%E??_':** #_AK#]J;_ *.5^('_ (65
M]_\ ':/^&L/VIO\ HY7X@?\ A97W_P =HHH /^&L/VIO^CE?B!_X65]_\=H_
MX:P_:F_Z.5^('_A97W_QVBB@ _X:P_:F_P"CE?B!_P"%E??_ !VC_AK#]J;_
M *.5^('_ (65]_\ ':** #_AK#]J;_HY7X@?^%E??_':/^&L/VIO^CE?B!_X
M65]_\=HHH /^&L/VIO\ HY7X@?\ A97W_P =H_X:P_:F_P"CE?B!_P"%E??_
M !VBB@ _X:P_:F_Z.5^('_A97W_QVC_AK#]J;_HY7X@?^%E??_':** #_AK#
M]J;_ *.5^('_ (65]_\ ':/^&L/VIO\ HY7X@?\ A97W_P =HHH /^&L/VIO
M^CE?B!_X65]_\=H_X:P_:F_Z.5^('_A97W_QVBB@ _X:P_:F_P"CE?B!_P"%
ME??_ !VC_AK#]J;_ *.5^('_ (65]_\ ':** #_AK#]J;_HY7X@?^%E??_':
M/^&L/VIO^CE?B!_X65]_\=HHH /^&L/VIO\ HY7X@?\ A97W_P =H_X:P_:F
M_P"CE?B!_P"%E??_ !VBB@ _X:P_:F_Z.5^('_A97W_QVC_AK#]J;_HY7X@?
M^%E??_':** #_AK#]J;_ *.5^('_ (65]_\ ':/^&L/VIO\ HY7X@?\ A97W
M_P =HHH /^&L/VIO^CE?B!_X65]_\=H_X:P_:F_Z.5^('_A97W_QVBB@ _X:
MP_:F_P"CE?B!_P"%E??_ !VC_AK#]J;_ *.5^('_ (65]_\ ':** #_AK#]J
M;_HY7X@?^%E??_':/^&L/VIO^CE?B!_X65]_\=HHH /^&L/VIO\ HY7X@?\
MA97W_P =H_X:P_:F_P"CE?B!_P"%E??_ !VBB@ _X:P_:F_Z.5^('_A97W_Q
MVC_AK#]J;_HY7X@?^%E??_':** #_AK#]J;_ *.5^('_ (65]_\ ':/^&L/V
MIO\ HY7X@?\ A97W_P =HHH /^&L/VIO^CE?B!_X65]_\=H_X:P_:F_Z.5^(
M'_A97W_QVBB@ _X:P_:F_P"CE?B!_P"%E??_ !VC_AK#]J;_ *.5^('_ (65
M]_\ ':** #_AK#]J;_HY7X@?^%E??_':/^&L/VIO^CE?B!_X65]_\=HHH /^
M&L/VIO\ HY7X@?\ A97W_P =H_X:P_:F_P"CE?B!_P"%E??_ !VBB@ _X:P_
M:F_Z.5^('_A97W_QVC_AK#]J;_HY7X@?^%E??_':** #_AK#]J;_ *.5^('_
M (65]_\ ':/^&L/VIO\ HY7X@?\ A97W_P =HHH /^&L/VIO^CE?B!_X65]_
M\=H_X:P_:F_Z.5^('_A97W_QVBB@ _X:P_:F_P"CE?B!_P"%E??_ !VC_AK#
M]J;_ *.5^('_ (65]_\ ':** #_AK#]J;_HY7X@?^%E??_':/^&L/VIO^CE?
MB!_X65]_\=HHH /^&L/VIO\ HY7X@?\ A97W_P =H_X:P_:F_P"CE?B!_P"%
ME??_ !VBB@ _X:P_:F_Z.5^('_A97W_QVC_AK#]J;_HY7X@?^%E??_':** #
M_AK#]J;_ *.5^('_ (65]_\ ':/^&L/VIO\ HY7X@?\ A97W_P =HHH /^&L
M/VIO^CE?B!_X65]_\=H_X:P_:F_Z.5^('_A97W_QVBB@ _X:P_:F_P"CE?B!
M_P"%E??_ !VC_AK#]J;_ *.5^('_ (65]_\ ':** #_AK#]J;_HY7X@?^%E?
M?_':/^&L/VIO^CE?B!_X65]_\=HHH /^&L/VIO\ HY7X@?\ A97W_P =H_X:
MP_:F_P"CE?B!_P"%E??_ !VBB@ _X:P_:F_Z.5^('_A97W_QVC_AK#]J;_HY
M7X@?^%E??_':** #_AK#]J;_ *.5^('_ (65]_\ ':/^&L/VIO\ HY7X@?\
MA97W_P =HHH /^&L/VIO^CE?B!_X65]_\=H_X:P_:F_Z.5^('_A97W_QVBB@
M _X:P_:F_P"CE?B!_P"%E??_ !VC_AK#]J;_ *.5^('_ (65]_\ ':** #_A
MK#]J;_HY7X@?^%E??_':/^&L/VIO^CE?B!_X65]_\=HHH /^&L/VIO\ HY7X
M@?\ A97W_P =H_X:P_:F_P"CE?B!_P"%E??_ !VBB@ _X:P_:F_Z.5^('_A9
M7W_QVC_AK#]J;_HY7X@?^%E??_':** #_AK#]J;_ *.5^('_ (65]_\ ':/^
M&L/VIO\ HY7X@?\ A97W_P =HHH /^&L/VIO^CE?B!_X65]_\=H_X:P_:F_Z
M.5^('_A97W_QVBB@ _X:P_:F_P"CE?B!_P"%E??_ !VC_AK#]J;_ *.5^('_
M (65]_\ ':** #_AK#]J;_HY7X@?^%E??_':/^&L/VIO^CE?B!_X65]_\=HH
MH /^&L/VIO\ HY7X@?\ A97W_P =H_X:P_:F_P"CE?B!_P"%E??_ !VBB@ _
MX:P_:F_Z.5^('_A97W_QVL3QO\8_B[\3;6"Q^)'Q4\2>(8+60R6T.N:Y<7:0
/N1@LHE=@I(XR*** /__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>tyl-20201231_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2020-01-31"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2020-01-31"
  xmlns:tyl="http://www.tylertech.com/20201231"
  xmlns:us-gaap="http://fasb.org/us-gaap/2020-01-31"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="tyl-20201231.xsd" xlink:type="simple"/>
    <context id="i6230db87957f486bab11494ea334dfdc_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i633bb420f8f047a1be8ec7b57b78684a_I20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2020-06-30</instant>
        </period>
    </context>
    <context id="ibfe4d71b6c1041b4af2b12399ec56c74_I20210217">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2021-02-17</instant>
        </period>
    </context>
    <context id="if8fa710bd40b4dd590f20c1b4534950e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareLicensesandRoyaltiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i117f5dbfd2ee45b9acfdcbfa8c75576c_D20190101-20191231">
        <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="id9b96ea2c94741fe9153877de62c6fed_D20180101-20181231">
        <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="ia8322e4d56da4e2d95685db9396c9692_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ida4f226a38484bfba1d39a6cb3f09899_D20190101-20191231">
        <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="ifde0f926bfce4fd082aedc3599d56854_D20180101-20181231">
        <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="i9cc233e615334f518f580b82bb14d73a_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5c7d1b68baf7406fa7740140cec4e452_D20190101-20191231">
        <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="i321785b37ea747b8879b892dee772d78_D20180101-20181231">
        <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="i05e1622f629a4425913b1635df4a04e2_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8d10cc1da94440e1b8af4178515524bd_D20190101-20191231">
        <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="ie9abd07dabb546c6acab4fa6949b3c4e_D20180101-20181231">
        <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="i1b3f1e3d428e4132927a753977386694_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231">
        <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="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231">
        <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="i9a28a06f509941fe98fb7e7fc27c5600_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="idb422f10382e4413ae24e0220d77db4f_D20190101-20191231">
        <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="i33a50375addc42559ace50529545ce43_D20180101-20181231">
        <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="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231">
        <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="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231">
        <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="i0c0b7e083ecf409aaf3ad6340f8dac46_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AcquiredSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib017794e72244d0c9cc15892c74e8e3c_D20190101-20191231">
        <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="i7a1e475a5ccc40388fdd253f99b09167_D20180101-20181231">
        <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="i15fbe9bcb6fe49a9b0cab874a05dec3c_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareServicesMaintenanceandSubscriptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7a62bd11803e475387e6330dddf212cc_D20190101-20191231">
        <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="ifb5e1296d5644b179f952701425fe1cc_D20180101-20181231">
        <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="id293bf05103a494192d983b0a8bacaab_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="iec74e62741324a67999f82c1f1432c6a_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i2d5b35757f0644f7924170354b92a6bd_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="iaec3f46826db4f818ca92b920242ca81_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="idf223f37a83546f28faf8e1352d1d155_I20171231">
        <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="i370301866763430c80bdb1dbf9376fd4_I20171231">
        <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="i84e31879d6de46189bf654c346646ad8_I20171231">
        <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="i5acd2706ae714def8383f42b3d4180a5_I20171231">
        <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="id2bf4b9faebc4ff290dc251edf4b6bae_I20171231">
        <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="i3c70a7aba97846fe9a0bc5653fd1b1a3_D20180101-20181231">
        <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="i7b6930cb71df41bb9bb8f40e55f1bf01_D20180101-20181231">
        <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="icae6d928468f4308a26724f751f18e33_D20180101-20181231">
        <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="if74df7a19c3942cb9ff75a6a5d6f1812_I20181231">
        <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="ia77fa689a8334d86820dc4579345cd38_I20181231">
        <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="i016e472e4d6a4a3b833a29b7946751a9_I20181231">
        <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="i5fc73f07950541c2bc26454cd9193567_I20181231">
        <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="if63f6f530f2947ac8641e5d47d2459ac_I20181231">
        <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="i6a4f6e2ccf094812a26851504a3c4697_D20190101-20191231">
        <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="ic229aec4702c4eedb9420f1f1c7aa168_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="if652526c5d564fdc83d5d5e0b7cad7ce_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="ib2a82e2e40424ebd9aa2d7e4c88c8db6_D20190101-20191231">
        <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="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231">
        <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="id48ae9bc0d4f4b42a3c41cf57e68c56c_I20191231">
        <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="i45ce7136c2a8459284d712a29362fee9_I20191231">
        <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="i9ee1619e595146ed837722870c9abb71_I20191231">
        <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="iadef3649eac545168fc9afa6d9c92254_I20191231">
        <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="i7ba5419930ea446ab7a1d368294d235f_I20191231">
        <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="i3cb7d2d57c82434abafa888df519b0b4_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib7bb27ddbf7242a286b49a1ff342b735_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2d65f7316c4047c5923f4c34f57d2ed8_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="id83f6cb9c91c48bfaeb540df6008afe4_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i8931e459110d4fb29c212d1c2b0f9f5f_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="ie663b19deda44df6b80a183376dfde36_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="ia825caf5f5e84ab497faa2b1f3c68363_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i64fffae190564776a26bd84c84225be2_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i5444796c7d4b449f9947dd51c47222e9_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i63e0a25031e7488d8d1318bfc863ae0e_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia22c2945847d4417af7ec35f1e88400f_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i45505cddc67248faaba02d34cb7979d2_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ife077d9575b74e78be8106979a431594_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id3a0729ea86c4aae9ec5d014190a5e10_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i5d0e27ba06b44330b51f456deab73ad4_I20191231">
        <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="ia9d3c7e5c2de4087baba0361c032ede0_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="id4c1cb9adf4046ef95f5f38893efd8ce_I20191231">
        <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="id13b861c42bc48dfb625053a4d857592_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i94daf233c3194985b62bde30928670a1_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib375b5571fae4e25a902fad22df123ec_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5583ee35a5ab41ebaa53632a5c580575_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ibf0996191f544a47aa3252f3c6b8abfa_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i77474ef608ba4afa8feabe57cb359905_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ReportingUnitAxis">tyl:DataAndInsightMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i2345196ee5364b50af4122faa02b1455_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ReportingUnitAxis">tyl:CaseManagementBusinessProcessManagementDataAndInsightMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i78dfe745fd3144b0822619031b7bdbde_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i39b2eaa37ed24792a9ca54053db123b6_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tyl:BFTRLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ied6f64ee5036457f909b03c8c47daa40_D20191030-20191030">
        <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="ib380b3b73a1a40f99d813fb62fa45604_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic847e519530c45bf9016c8ff781dcb50_I20190228">
        <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="i305eac48da0b40218f74de76b1314f83_D20190228-20190228">
        <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="ic8168101f57449e9a85433dc8290fd6f_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ife54261a0f3d4ca3a8b579d2c9682d64_D20190201-20190201">
        <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="i9bdc423139fe439faff35cca3d53f67c_D20190101-20191231">
        <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="i6866bb1920874c24b16f29ca6bede98b_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="iac0ae79f1469490a90790daa11e7f2f0_I20191231">
        <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="icc3a8ea7b5b24160ac5abb90cdf333b9_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2746c1cc021146b0aec5e58779f3076e_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3219e002c83348cab50b0e6ffa6b4191_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="if46f51fb226c43048218559f563502a9_I20191231">
        <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="idb690a8e4d1e40d4b27b724094ce54c9_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i77f680c29cb34a808e25c0b8104d80f5_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i58093d3d479849cfbd2eff31482f9783_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i1a65b3cf8d7149d1ade784c3e5c89b3b_I20191231">
        <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="if88cb4be8f1344d09dfd429816868c60_D20200101-20201231">
        <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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0835333b1817476fae0b3a5feef10690_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="iba8cb413cfd641da91dc0775bb79a227_I20191231">
        <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="ice971cc672f04378945f87c4139a37f4_D20200101-20201231">
        <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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i929fdd1b837d46ff933ec52c444aa16b_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="id494010e2e764b258a7e6e507f72179a_I20191231">
        <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="if80f7bfbeee84d0f85fffb52339ed359_I20181231">
        <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="i73b70e86f2b14fe195929fadc40a68ac_I20181231">
        <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="i71e9c53e377c4402a13fadc418b82438_D20190101-20191231">
        <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="i4abbeb24189541c4b6dde107c2f08de9_D20190101-20191231">
        <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="i5803bdc414da480a9dbe249393f7f1a4_D20190101-20191231">
        <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="i2e962ad96fae4176955ee8a514f8468e_D20190101-20191231">
        <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="if3a281d63b5f4808ba90cf0e318a5207_D20190101-20191231">
        <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="i77f4f7b40a0a4e9c8e60200ae6adb450_D20190101-20191231">
        <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="i30de2f6d29134baeb9d7fd10ef9c2769_I20191231">
        <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="i04a262b445d242e0bc9ec15c5b189ca5_I20191231">
        <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="i1b2789605e86461fb518b096c797b999_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CourthouseTechnologiesLtdMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id9eb4c1627904b098348ff6d8e2672a8_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CourthouseTechnologiesLtdMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifd8cb8d148054fdaac26c7fe42e99562_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i791885cd70434284b30f7d4168cf471a_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i314ed68cc2a844c397cb8dc976771b9d_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="iec288e447c034f6b8cf1ba7b7f05c5e7_I20191231">
        <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="ieb33b4efea03473594b246452e01b04d_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i619de32472a14447b2ac8bd16d2f248a_I20191231">
        <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="i3d5e11a6c02b4b31af1d4d6cb20eefc5_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i9d3c25ebfdc949c590c6550e4767d78f_I20191231">
        <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="if76b71899a304e0eb9638dc793cbb1ff_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i12489bfd9ab94c08af9a2cb062f4847b_I20191231">
        <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="i51e9483e637b4b27ad714b5dd787651c_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i0d6fb75fb1f14fd095dad540a4435cd1_I20191231">
        <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="i85174adb41d4484092b78a7104980b10_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia676244b50ab49529c59c19f228664bc_D20190101-20191231">
        <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="i07476736cfec4b56a28475a43618cde8_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9b12338499724618a2f10c02c169b31d_D20190101-20191231">
        <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="i32d834599c984f9ebf196a393bf7b1e1_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie844a30b32d14f259d80645725dfc9e7_D20190101-20191231">
        <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="i05d88abff85f46cd8730d3d2b41c3a52_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4e10c2b062704e0d89feb98366351063_D20190101-20191231">
        <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="ib35a4cc09656425db4048e1d9fbfa6a2_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i6b228d04c2874010925935400911f3cb_D20190101-20191231">
        <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="i0b793b88738448c8b424e13b38750dfe_I20190930">
        <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="i2ba12eae25fc408f819a9460e865b419_I20190930">
        <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="i895d9f7aa1c94c2197d32ead27eda95d_D20190930-20190930">
        <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-09-30</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="i08f4d489526345e7985462400385c9e3_D20190930-20190930">
        <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-09-30</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="i6f87819252ba4d4b8f5ec2969bfc24fd_D20190930-20190930">
        <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-09-30</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="i1762aa0ea46e431289b30c6cb3c49679_D20190930-20190930">
        <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-09-30</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="ibf1b14c92e824bdeac21fa748bda20f6_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="id2bea65be2e44fcf810050142e2320ff_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iaeffcc8d31f34ceeaaea2f0110344bb9_D20190101-20191231">
        <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="ia88a5e942ac04b79ae2b9099fbf1302c_D20180101-20181231">
        <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="i735bb4ff00b6467f8f0a9344f904ca28_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i834e04f05e664eb98c0b0969a7be7291_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i1cfd0b0d8fbd448d89aa47c9ae3b2209_I20210219">
        <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>2021-02-19</instant>
        </period>
    </context>
    <context id="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231">
        <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="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231">
        <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="i3fba9c501ecb48488641149b3f3174c2_I20181231">
        <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="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231">
        <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="i8dfa0f180b1e4b7ebdd34ac1961839d2_I20191231">
        <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="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i39a267385f494dce9f4725b6addbb80c_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i8dd210d68c10475fad0a0a5e93af1528_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i665a8bb2781c470e99cb87839f7e5fbd_I20191231">
        <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="iad6cf6f58e5a4d6f96b29477f21b456d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSubscriptionsSoftwareServicesAndMaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i1712ccf082ef466cb02c343fc02b0b8f_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSubscriptionsSoftwareServicesAndMaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i113b64d7c6ae4eae9c3aee682d8cecbb_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSubscriptionsSoftwareServicesAndMaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="if10d25a3227f4f4ab01ec8f05f15151e_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ide28a19f9a5d487f854fce9ac2ba02aa_D20190101-20191231">
        <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="id54b568dfe07484db3ea078954dd5601_D20180101-20181231">
        <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="i0d6a00f13daa4cdeb46d5ab68209cdda_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="ib51c378298584fa1a4eb53d795b5740a_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id6b415396bb841e79c9345d0e3300d97_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia7cf9706ae3c466d8639d30b1f7b428c_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia6c80417eac74c82ae3468f659ce8266_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia255aed390eb4000a104450972e6ed3c_D20190101-20191231">
        <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="i5c8db9ebd8254d46a3fbfb6e3f34627f_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i04d0fec5dca84d1c9852fff27dfb4f6f_D20190101-20191231">
        <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="iaca354e3138d46858d4e955c8c20e471_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id9d1322a873f47e0874e897492712721_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i6d22aa1df25346ffadaa95acb43364ae_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2e91e63dcd724a48a90294c512bdd40c_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia40303a553f9437bb075221df8e35cf7_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i374e0b74c71e440c87e9c6d9bb653e9b_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i727d890376f54ff8bd2ec913cded5d8b_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5dba41f479d947b1bdcedc66802333e2_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia5dcc53ef7064bc39ccdcf09f7c79001_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0ea582e38b4e4ddc9c2381a870002d2c_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4c3f6ac328eb45f397df2d21867b655a_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i819fa787e3a94691994562b71e1a4dc0_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8de5a13236e44faf95422dd421c2f236_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i6f6ebfcf46af4c81b9123d960fbeaa77_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i1392d5cf0be94679bffe21ecce0817c9_D20200101-20201231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i36c9cc8a647c4c7aa42a6200e89ce9fb_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i611ef8f3c31c46738e2b843bf6886bdd_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if8e240b661ce4e0e883b743c3189fc7c_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i72c1e7ba154e47779fc521e3c9800822_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i605bb7a621c94f0a90ad78dcbc8e0b4b_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i993fd2302c8f4b5d9203136c5c02e6e3_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i328eb1e00308488e8fe0cae2086cd019_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i20538c481f6b4f248bfa73e7e3b47cfc_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:OperatingSegmentsAndCorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i80940766fb8a4664b36c530c616fcd77_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="ia427f4d34826408fa62a3e2007be5010_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="i282eeaf0e8dd48b3a2ad2ded16faad06_I20201231">
        <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>2020-12-31</instant>
        </period>
    </context>
    <context id="ic4a81836cd1c43a2823dd81494bf1b5b_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i25443b45c9b54bb9a6c7e89b89f04be3_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i21c91e321aeb4ad5a04e899cf0ceab93_D20190101-20191231">
        <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="i573d9d38aebc4dfdbedc8aab3002adfc_D20190101-20191231">
        <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="ie0ad6acaca964ed791bb6bf4fab5acbb_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i59629cf15db348bb8dd675108c5f4040_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ief24ed71c8ef43a69aa5c08f4529cb5f_D20190101-20191231">
        <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="if10392ccfe30424aa582db6c6025dc23_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i7b1f1b966cee4e208524d3bc0d4f3e66_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i2cfd1e23f0ab42e2ae01539b75218b9d_D20190101-20191231">
        <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="i61f524e60a524033b29ca0bda69c4415_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ib3fc81cd23e74d7f9c4f9f6141480672_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ic7bdcddffd31491f88bd41ea6719ed4f_D20190101-20191231">
        <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="i20a02e4e03d94cf5bc97cc747e645e09_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i3ab6fdc4955541e7b06e731610bda272_D20190101-20191231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i98dd2e43677045b0a081fa69828920af_D20190101-20191231">
        <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="i84af85d3584844cdaef25f135b52d82f_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <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="i933b232be67e40f79aa7f187c9126518_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <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="i5bb54982aaca4482a7035e7887214a6c_D20190101-20191231">
        <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="if3471d9417bd49cb8b685414796e6c4c_D20190101-20191231">
        <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="i440f307e20524fe0833637af7678f996_D20190101-20191231">
        <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="i553e24a2da774e478754fc9c1e57a562_D20190101-20191231">
        <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="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231">
        <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="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231">
        <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="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231">
        <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="i27a0089f73bf408b9943723e46fe355b_D20190101-20191231">
        <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="iee9101c9ee6f4be09cb4309ec80b7401_I20191231">
        <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="i079b5f963ff84613826adf3d7fded19c_I20191231">
        <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="ib30d32802f7f4c99938c4e05b9fe987a_I20191231">
        <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="i4521963cbf1640c6965540d7f6d38ab8_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i8ad21c706fe340cb9411db0681562f68_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="if22553c28ff942cc8e5900fddca936f2_D20180101-20181231">
        <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="i19dbace2df584044aac5e0ab62024623_D20180101-20181231">
        <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="i1aad5937099e4a2293e0fd91018fa1eb_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ic2439b0fb7d841e8a8fa30bdc688de94_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ibf912bc860774b1dba9ba283a2ce334f_D20180101-20181231">
        <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="i9135b6e30ab045c5857f81db743a8526_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ia370f1b7a2554327b41cc1bef94b00c8_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="iacca40e7da7e4ac28f39fbf369fa2bda_D20180101-20181231">
        <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="ibce7b17045654da981ced9bab9f9753b_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i4d63ed4bfe8446288616dca9a8ce3c06_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="if53859a5dd8b4597b1777d2394a24258_D20180101-20181231">
        <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="i40b52fdab1124a808a883826d292e023_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i6a42dc7ef48349dd82fa838275843264_D20180101-20181231">
        <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:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ie996cfde29c94f61817a44c3ceb6f32e_D20180101-20181231">
        <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="i047127629c7049cdb880cf46de83d3df_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <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="if2e4d942719b4859b919fc5353befe4a_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <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="i93f0ac5a22db4e12a181e967a69eb477_D20180101-20181231">
        <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="i1ecdc4e374054062b0adc1f0b6e189e4_D20180101-20181231">
        <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="i2f4ab1e3f40742478b1505d557c44257_D20180101-20181231">
        <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="id43e6696fe0f47ada64f765007100613_D20180101-20181231">
        <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="i66568784bd264412b8ee5a984f047df8_D20180101-20181231">
        <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="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231">
        <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="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231">
        <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="i16e3c72329974206b28447d282141bd9_D20180101-20181231">
        <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="i5ede29565891475e8788cf9eb6ebd6ff_I20181231">
        <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="ieab21d0cb4014d989822c3fcf535de9d_I20181231">
        <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="i5607ea47340b4cfcabdbd3a677fb48f8_I20181231">
        <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="ic06b075c984748b299e6f90b6ed4dbd9_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="idca986a4ea24433283e7eb2ec4c9ef60_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib5758dbecdf24fbc9276380fc8db350f_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i88db4d58db264cdf9a040edd12ab4b64_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie404d1023b2e4f27a09d0d6e417c9d09_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic3521c17bed745d6b7b97aed9032c297_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic74c202358194dc2ad96dca31adeb5c4_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i41624fbe290d47e88764ba29a3f2c7df_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5236921ceff4428a8a1293a8c13b4796_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iafad67b68d36415389e35d95f7d7097c_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5d827cd29e214fba854ce173f1f9f8b9_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia3493665acbb4df4a46e3121f8b28e41_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5ca42f97119049588f2dc1ea31ed561e_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia35003eb05c94ac99fa96195ea44c2b2_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie323bc953efe4028a95d59dd71e1047e_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic4b118fb59224e7682304966b379745f_D20190101-20191231">
        <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="ieb1ea067db4642b9ad657f1c16d2e87b_D20190101-20191231">
        <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="ia9f14bbeed814f11a0ab79e9cb41189b_D20190101-20191231">
        <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="i60f8e2975f9e41d6ba7f13be6fbf6e99_D20190101-20191231">
        <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="ie98bb68a93b44965825cb2c8ceae7a4e_D20190101-20191231">
        <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="i0863c02b7bf64f529669ba0296368dae_D20190101-20191231">
        <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="i1af2984530ee4c29963176b6e39badef_D20190101-20191231">
        <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="iaef736eff1db45f2a0a38f5d6b15c789_D20190101-20191231">
        <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="i3dd06f2547e94523b6b5d770f4d02001_D20190101-20191231">
        <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="ibb72291e8b444df0a6809d0558f0d53e_D20190101-20191231">
        <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="i3228b5ae61374a6a8baff28271dca14c_D20190101-20191231">
        <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="ice166ef1838d494993ecc175966d9f07_D20190101-20191231">
        <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="iba59f1fc8ecc47629796b9e30800609c_D20190101-20191231">
        <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="i456e0b46eec44e44823802fb48496bd1_D20190101-20191231">
        <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="i0a3ebc400648468d93df88fcabcd5437_D20190101-20191231">
        <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="id6e79d8a6f8c4624b612ce8ea9a3bba8_D20180101-20181231">
        <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="i8b5e1165a3a64022a70310fa0bd0e834_D20180101-20181231">
        <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="ie296594afadc4d10bbe2a60369ba6444_D20180101-20181231">
        <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="i30539d66e910450a9aa6513ab82f4549_D20180101-20181231">
        <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="i5f3e6895f0034ba18a0c1f0a4381ea4d_D20180101-20181231">
        <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="iefdea658b3624f6c99b1cbbf902bc3bf_D20180101-20181231">
        <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="ia72ad4cced7f45c0be875b7f701ff253_D20180101-20181231">
        <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="if4aa41eda5044f509fa31fac7af47ac9_D20180101-20181231">
        <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="i2330b90e43d64bbd9d882f331f7eac16_D20180101-20181231">
        <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="id1dca31a3fdb466d86ab7d4afe7c1fef_D20180101-20181231">
        <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="i5f9b125c3b6e4455b029d41f0a604cb9_D20180101-20181231">
        <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="i2e6434c6997f4dfab4a6d963bc641791_D20180101-20181231">
        <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="id4fc66e631144d6ead9c2a03a1ec2293_D20180101-20181231">
        <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="iec0771ed002247d3b872c9828fc3893c_D20180101-20181231">
        <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="i90565bf53615482ab84be82e68a17187_D20180101-20181231">
        <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="i43a3b3114e4f4b41aa6686085148818c_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i30c7482c204e4d92aa7225c9443ac902_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i13b169af0153481dbfc250ff522efd7d_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5d690ef4857442a99408eaa38571ba81_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia1d04c0f1f004087a9320e951fe51100_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="icae667a9c53d4d95895be049af6e1365_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i11f3a0ebc0e442a09083af76d68073e4_D20200101-20201231">
        <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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i90394ba33e644132abcc99dfc7c4f81d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3445a31732f24a65a862d5e005ac762c_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:CorporateAndEliminationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8bcb3a63e1184a6da13d229983e0bf8d_D20190101-20191231">
        <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="i83427b8854304fb8b10c8587f43e5f87_D20190101-20191231">
        <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="i4a03ecad18d44092b7400425a66cf83a_D20190101-20191231">
        <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="i79b9f8b7c0a143ab89753d72adbc8578_D20190101-20191231">
        <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="i61a20a8a61cd4df5b764c46f5f2d8976_D20190101-20191231">
        <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="i684267dd3f8b4ecd95e4c99ced1c2423_D20190101-20191231">
        <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="iccb7c20612864e26baedec0f83c8ccdf_D20190101-20191231">
        <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="i618865cb24b84f6d923d028a187de73f_D20190101-20191231">
        <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="i5e4ab2b44b484480be10536043777e7a_D20190101-20191231">
        <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="i9e72e38f5be3453282ce5f907d536e8a_D20180101-20181231">
        <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="i7818d46a5d8b47ecb2ef6aa3aa4d219d_D20180101-20181231">
        <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="ia5ac0b98eb3b437e9e746b2f7cc5e97c_D20180101-20181231">
        <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="i2f5c8afdaded4119a0134645328601b8_D20180101-20181231">
        <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="id3a1c250124843d180e37631a9a158a8_D20180101-20181231">
        <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="i740eecf03fd54d479432ffae3de0a8d1_D20180101-20181231">
        <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="i3a78d159ac204462baa0ac6a418f3e74_D20180101-20181231">
        <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="i19d8a060accd40f68cdc69b39f176a15_D20180101-20181231">
        <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="i7b05d508d00749e2b8162049ad8b5b92_D20180101-20181231">
        <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="i120a3f6aa2394e6b92280fdbf67605aa_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i7a521d97296e4b768a29218491f56763_I20210209">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">tyl:NICIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-02-09</instant>
        </period>
    </context>
    <context id="i9d9aaefdf6614ee7a787f15a867e2ff1_I20210209">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MergerSubMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-02-09</instant>
        </period>
    </context>
    <context id="i940e5f8f5aaf4e33a5b7c91c0c91720f_I20210209">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tyl:SeniorUnsecuredBridgeLoanFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tyl:GoldmanSachsBankUSAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-02-09</instant>
        </period>
    </context>
    <context id="i1148a91f539c4aafbd7013a9683e5513_D20210209-20210209">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">us-gaap:ScenarioPlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tyl:SeniorUnsecuredBridgeLoanFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tyl:GoldmanSachsBankUSAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-09</startDate>
            <endDate>2021-02-09</endDate>
        </period>
    </context>
    <context id="i70b33b6ad040497281f685b30659ca9b_D20210209-20210209">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">tyl:NICIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-09</startDate>
            <endDate>2021-02-09</endDate>
        </period>
    </context>
    <context id="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4dd4939787814ee1882916c40a917011_D20200701-20200930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231">
        <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="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930">
        <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="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630">
        <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="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331">
        <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="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="legalmatters">
        <measure>tyl:legalMatters</measure>
    </unit>
    <unit id="business_unit">
        <measure>tyl:business_unit</measure>
    </unit>
    <unit id="segment">
        <measure>tyl:segment</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM180L2ZyYWc6YjEyYTM5MTEzY2Y5NDk4YmE3OTIzMTg0MTljNDJmNjcvdGFibGU6NGJiNjIyNmI0NTQyNDcwMzk3NWJjOWFkNmY3NDVmYzUvdGFibGVyYW5nZTo0YmI2MjI2YjQ1NDI0NzAzOTc1YmM5YWQ2Zjc0NWZjNV8xLTEtMS0xLTA_5e6301db-97a8-4401-b565-5d3be4f7aa58">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM180L2ZyYWc6YjEyYTM5MTEzY2Y5NDk4YmE3OTIzMTg0MTljNDJmNjcvdGFibGU6NGJiNjIyNmI0NTQyNDcwMzk3NWJjOWFkNmY3NDVmYzUvdGFibGVyYW5nZTo0YmI2MjI2YjQ1NDI0NzAzOTc1YmM5YWQ2Zjc0NWZjNV8yLTEtMS0xLTA_703c5ca2-fc81-40cf-98f7-b2832bdffa49">2020</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM180L2ZyYWc6YjEyYTM5MTEzY2Y5NDk4YmE3OTIzMTg0MTljNDJmNjcvdGFibGU6NGJiNjIyNmI0NTQyNDcwMzk3NWJjOWFkNmY3NDVmYzUvdGFibGVyYW5nZTo0YmI2MjI2YjQ1NDI0NzAzOTc1YmM5YWQ2Zjc0NWZjNV8zLTEtMS0xLTA_88fd8fa4-fa75-4cc2-adba-8bb5d847063b">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM180L2ZyYWc6YjEyYTM5MTEzY2Y5NDk4YmE3OTIzMTg0MTljNDJmNjcvdGFibGU6NGJiNjIyNmI0NTQyNDcwMzk3NWJjOWFkNmY3NDVmYzUvdGFibGVyYW5nZTo0YmI2MjI2YjQ1NDI0NzAzOTc1YmM5YWQ2Zjc0NWZjNV80LTEtMS0xLTA_e8b09dbf-3a5c-4cfd-ad3b-bad594fd992a">0000860731</dei:EntityCentralIndexKey>
    <us-gaap:AccountingStandardsUpdateExtensibleList
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTAtMS0xLTMxMS90ZXh0cmVnaW9uOmU5NGZmNTU3ZDZiODQzN2M4MGNiZjY5ZDUwNmM2ZjcwXzI3NDg3NzkwNjk1MzU_923613e0-f2a8-4401-b2b1-01763b60874a">us-gaap:AccountingStandardsUpdate201602Member</us-gaap:AccountingStandardsUpdateExtensibleList>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="i5444796c7d4b449f9947dd51c47222e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NTQ_08918ce7-ad26-42b7-86b9-69235399badb">P3Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="i5444796c7d4b449f9947dd51c47222e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMjg_6534193c-8989-4ffa-9739-99f420f614b6">P1Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="i5444796c7d4b449f9947dd51c47222e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzI_08918ce7-ad26-42b7-86b9-69235399badb">P3Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="ia22c2945847d4417af7ec35f1e88400f_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEyMDA2_9f4088ec-ac39-4e93-acc6-7f71ad2066bc">P1Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:SalesCommissionsAmortizationPeriod
      contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDg1_ec9a6f16-bae1-475d-873b-a2db6cd27396">P3Y</tyl:SalesCommissionsAmortizationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="id13b861c42bc48dfb625053a4d857592_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzM5_742741b4-d349-4bdd-bcc2-2875ba4c7867">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ib375b5571fae4e25a902fad22df123ec_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDkx_687d0a58-f81d-42cd-a498-8c22c9cbf84c">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzgwMw_9c8021d3-ecd5-465d-842a-27ecc42ff8e3">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ib375b5571fae4e25a902fad22df123ec_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzEwOTA_687d0a58-f81d-42cd-a498-8c22c9cbf84c">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwMQ_f227370c-2237-429d-ad5d-84836ff26078">P1Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg2OA_bbe6fc68-13b7-4abb-8c69-8e3ba541aaec">P3Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <tyl:SalesCommissionsAmortizationPeriod
      contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM0OA_aaa61222-6e5a-41d4-8f6e-bd9f0f649267">P3Y</tyl:SalesCommissionsAmortizationPeriod>
    <dei:DocumentType
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6NDgxNTY0NjMxZmMzNGJmYWI5YzdkNDNlMDdlYjQ4Y2MvdGFibGVyYW5nZTo0ODE1NjQ2MzFmYzM0YmZhYjljN2Q0M2UwN2ViNDhjY18wLTEtMS0xLTA_fd76236b-803e-418a-8dd6-6b05001e760e">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YTM0Zjk1MDY4NWVlNGQ3YTgxODlkNTZiMjg4MTM5N2MvdGFibGVyYW5nZTphMzRmOTUwNjg1ZWU0ZDdhODE4OWQ1NmIyODgxMzk3Y18wLTAtMS0xLTA_d433c48e-85f0-41f7-880a-2b4328cb92f6">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8xMTU_f3b7ed57-deed-4f51-b4b9-5666406152a8">2020-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8xMTU_865dc2c0-44b8-40a0-9872-0783b2a61d01">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6MDg1MGM5MjcyOThkNGYxMzlkMWFlNDhkOTdlZWQwMjYvdGFibGVyYW5nZTowODUwYzkyNzI5OGQ0ZjEzOWQxYWU0OGQ5N2VlZDAyNl8wLTAtMS0xLTA_8c9d31eb-08af-4b34-9713-66b7bbe85775">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODYx_155e3d0a-ee66-4223-bf5e-03d39c0821dc">1-10485</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6OTA1ZWZiMTBhZjczNDRmMThjMzI4M2M4ZmRjMzQzZmIvdGFibGVyYW5nZTo5MDVlZmIxMGFmNzM0NGYxOGMzMjgzYzhmZGMzNDNmYl8wLTAtMS0xLTA_299e62be-22f4-453d-b333-953a2e17845b">TYLER TECHNOLOGIES, INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8wLTAtMS0xLTA_583fe928-ba7c-4c5c-a40b-8b8a91535557">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8wLTItMS0xLTA_b51e30d9-dc02-42e1-95c2-0fa699136de4">75-2303920</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8yLTAtMS0xLTA_af240e07-a716-45f1-bc30-7a2074d61c20">5101 Tennyson Parkway</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8zLTAtMS0xLTA_88752307-8b3f-48ff-b526-81fa2de04fc0">Plano,</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8zLTEtMS0xLTA_23d6b1d2-128d-4a32-9c9c-1b0959bbca16">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6YmIwMjdlNDMzYjJjNDI1MGJjYzAyNDc1N2IyNjI0MGQvdGFibGVyYW5nZTpiYjAyN2U0MzNiMmM0MjUwYmNjMDI0NzU3YjI2MjQwZF8zLTItMS0xLTA_48af70c5-b242-4768-885e-5e883bb09d6f">75024</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY2_35eb614e-b25b-45aa-bfb9-a19cdc1af888">972</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY3_0ba97072-c733-4a1c-9db3-cf9cb441be03">713-3700</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6NDJlZTE3YTk2Yjg2NDQ5YTk0NmJkMjFlMzdiM2Y2YTcvdGFibGVyYW5nZTo0MmVlMTdhOTZiODY0NDlhOTQ2YmQyMWUzN2IzZjZhN18xLTAtMS0xLTA_4cf3005c-2a2b-4012-838a-8055e6bdb90d">COMMON STOCK, $0.01 PAR VALUE</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6NDJlZTE3YTk2Yjg2NDQ5YTk0NmJkMjFlMzdiM2Y2YTcvdGFibGVyYW5nZTo0MmVlMTdhOTZiODY0NDlhOTQ2YmQyMWUzN2IzZjZhN18xLTEtMS0xLTA_cd8a56fd-9657-4486-8d9f-c6a8a3f34464">TYL</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6NDJlZTE3YTk2Yjg2NDQ5YTk0NmJkMjFlMzdiM2Y2YTcvdGFibGVyYW5nZTo0MmVlMTdhOTZiODY0NDlhOTQ2YmQyMWUzN2IzZjZhN18xLTItMS0xLTA_30fc669f-981f-4486-bdaa-d0ea56e2cf32">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODYy_262d2d6a-043a-4033-ba29-40dc0d2b20dd">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY4_927bf8dd-dcc1-4447-8fe9-4171f023bfcc">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY5_7cf333e4-944f-4f37-bf97-e5c60a33b3a3">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY1_0b06366f-bf39-4a5b-8dd2-be6cc0b82f89">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6MjA5ZDJkODRmNDVjNDE0YmI2Njc2YThlODk3ODNjOWUvdGFibGVyYW5nZToyMDlkMmQ4NGY0NWM0MTRiYjY2NzZhOGU4OTc4M2M5ZV8wLTAtMS0xLTA_4048d2e8-b1d9-4bfb-8af7-492090419c68">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6MjA5ZDJkODRmNDVjNDE0YmI2Njc2YThlODk3ODNjOWUvdGFibGVyYW5nZToyMDlkMmQ4NGY0NWM0MTRiYjY2NzZhOGU4OTc4M2M5ZV8yLTYtMS0xLTA_3e947fae-a9c4-4b6d-ac1d-81894a667f3d">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGFibGU6MjA5ZDJkODRmNDVjNDE0YmI2Njc2YThlODk3ODNjOWUvdGFibGVyYW5nZToyMDlkMmQ4NGY0NWM0MTRiYjY2NzZhOGU4OTc4M2M5ZV8zLTYtMS0xLTA_38b998ab-d5de-4808-9242-c35a171f61ca">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yNzQ4Nzc5MDcyMzQw_63134ef7-ced0-472e-904c-d7ce1a0f2404">false</dei:EntityShellCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yNzQ4Nzc5MDczMzk2_93a7ee09-718a-414a-856e-dc0c01bc8fa3">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityPublicFloat
      contextRef="i633bb420f8f047a1be8ec7b57b78684a_I20200630"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yMzU0_ba67c5d5-ba29-4c33-9995-3b614b3d56d9"
      unitRef="usd">13728101720</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="ibfe4d71b6c1041b4af2b12399ec56c74_I20210217"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yNjAz_63d2f2a0-0615-4d67-8889-f65f8c84b06f"
      unitRef="shares">40576730</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xL2ZyYWc6NzE0MzFmZWQ5NTViNGVlYzkzYzgxNWNhMzk2NDI1ZWIvdGV4dHJlZ2lvbjo3MTQzMWZlZDk1NWI0ZWVjOTNjODE1Y2EzOTY0MjVlYl8yODY0_3f89081b-bc5a-409e-9416-2f5cc8055e6c">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;11, 2021.</dei:DocumentsIncorporatedByReferenceTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if8fa710bd40b4dd590f20c1b4534950e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzItMS0xLTEtMA_9177a30a-231d-4af6-a585-773934b81884"
      unitRef="usd">73164000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i117f5dbfd2ee45b9acfdcbfa8c75576c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzItMy0xLTEtMA_d937282b-62e4-4ff4-a92e-41cdd6006b1f"
      unitRef="usd">100205000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id9b96ea2c94741fe9153877de62c6fed_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzItNS0xLTEtMA_3e1edd01-5c9d-4dce-bcba-1195a5e548ad"
      unitRef="usd">93441000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia8322e4d56da4e2d95685db9396c9692_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMtMS0xLTEtMA_ed01ff70-26d7-4587-acc2-b451c5e23a20"
      unitRef="usd">350648000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ida4f226a38484bfba1d39a6cb3f09899_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMtMy0xLTEtMA_6cf7b1b9-c139-41e2-a96a-a54524b88a6b"
      unitRef="usd">296352000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifde0f926bfce4fd082aedc3599d56854_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMtNS0xLTEtMA_a587db27-13d4-4bd2-9ced-6076bf4d4a8b"
      unitRef="usd">220547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9cc233e615334f518f580b82bb14d73a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzQtMS0xLTEtMA_58c66937-09cc-4d3e-ad2f-a0dc8128f9e3"
      unitRef="usd">186409000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5c7d1b68baf7406fa7740140cec4e452_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzQtMy0xLTEtMA_89feab90-5f07-4c72-94e0-0a108a1c4d31"
      unitRef="usd">213061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i321785b37ea747b8879b892dee772d78_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzQtNS0xLTEtMA_36c3e963-8cc7-4536-b472-77022d4dd549"
      unitRef="usd">191269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i05e1622f629a4425913b1635df4a04e2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzUtMS0xLTEtMA_03ff15e7-db6e-4851-8f03-66d15fda1368"
      unitRef="usd">467513000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8d10cc1da94440e1b8af4178515524bd_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzUtMy0xLTEtMA_f035e911-43e5-4608-ab69-1b35d6f74650"
      unitRef="usd">430318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie9abd07dabb546c6acab4fa6949b3c4e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzUtNS0xLTEtMA_398117ae-4450-43bf-b6bd-746a351f467c"
      unitRef="usd">384521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1b3f1e3d428e4132927a753977386694_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzYtMS0xLTEtMA_920a10df-47a9-4dbb-a44d-62631247dc09"
      unitRef="usd">21127000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzYtMy0xLTEtMA_05a89a92-5eb4-42ef-b37f-42ba31e4796a"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzYtNS0xLTEtMA_7b46bc66-5ac9-4b24-bd66-d8a0c355050a"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9a28a06f509941fe98fb7e7fc27c5600_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzctMS0xLTEtMA_d3603140-7dc2-4b6f-aa5b-4d8712d83452"
      unitRef="usd">17802000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idb422f10382e4413ae24e0220d77db4f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzctMy0xLTEtMA_5f190af7-dc7b-4748-bacb-e9153b44c52a"
      unitRef="usd">23012000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i33a50375addc42559ace50529545ce43_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzctNS0xLTEtMA_9621c658-9e52-476f-b639-cef537010e56"
      unitRef="usd">23658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzgtMS0xLTEtMA_e89f650c-9819-4822-a597-8695ba0693c1"
      unitRef="usd">1116663000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzgtMy0xLTEtMA_7c21176d-89d1-47a4-bda5-776c05575ea5"
      unitRef="usd">1086427000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzgtNS0xLTEtMA_a92d7757-af34-44d4-aa5a-2b98f3135c94"
      unitRef="usd">935282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="if8fa710bd40b4dd590f20c1b4534950e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzExLTEtMS0xLTA_c614a9ee-5c58-476b-9151-0b7635f17d3b"
      unitRef="usd">3339000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i117f5dbfd2ee45b9acfdcbfa8c75576c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzExLTMtMS0xLTA_3bd4535d-941b-4c8c-acb6-81df77be4033"
      unitRef="usd">3938000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="id9b96ea2c94741fe9153877de62c6fed_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzExLTUtMS0xLTA_192a126a-ca57-4635-885c-4accdb8f6268"
      unitRef="usd">3802000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i0c0b7e083ecf409aaf3ad6340f8dac46_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEyLTEtMS0xLTA_0fd365ef-c9d9-4d8b-bbf8-9db9c4a220e9"
      unitRef="usd">31962000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ib017794e72244d0c9cc15892c74e8e3c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEyLTMtMS0xLTA_a2d224a8-a128-45a6-be5c-cb22ac916c01"
      unitRef="usd">30642000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i7a1e475a5ccc40388fdd253f99b09167_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEyLTUtMS0xLTA_e2cea1aa-c186-4f6e-8a8f-29e68c9206f3"
      unitRef="usd">22972000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i15fbe9bcb6fe49a9b0cab874a05dec3c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEzLTEtMS0xLTA_7ae7c7f1-8d42-4f5c-b907-44c88f359dcf"
      unitRef="usd">510504000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i7a62bd11803e475387e6330dddf212cc_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEzLTMtMS0xLTA_a96fdb8b-64ea-46be-8b50-258218f5e8f6"
      unitRef="usd">502138000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ifb5e1296d5644b179f952701425fe1cc_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzEzLTUtMS0xLTA_27ebff87-fb02-4f77-8393-2dfceb54220f"
      unitRef="usd">438923000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i1b3f1e3d428e4132927a753977386694_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE0LTEtMS0xLTA_789d2893-80bb-4079-a000-d84b514cd8b7"
      unitRef="usd">15945000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE0LTMtMS0xLTA_fd98df9c-cf78-479d-a9a3-11266d213237"
      unitRef="usd">15337000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE0LTUtMS0xLTA_8736cd6c-e3c8-4152-8217-44eab5d61d20"
      unitRef="usd">14299000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i9a28a06f509941fe98fb7e7fc27c5600_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE1LTEtMS0xLTA_7a8dc05d-27ab-41f3-97d7-a52914008a3d"
      unitRef="usd">12401000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="idb422f10382e4413ae24e0220d77db4f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE1LTMtMS0xLTA_b0557c68-4a8c-450e-93c4-5ff893164e69"
      unitRef="usd">17472000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i33a50375addc42559ace50529545ce43_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE1LTUtMS0xLTA_5f087619-92c4-4389-a74a-9fbf858de612"
      unitRef="usd">15708000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE2LTEtMS0xLTA_ed3fd9b5-d016-452f-909c-5808a8c1e229"
      unitRef="usd">574151000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE2LTMtMS0xLTA_b1107a06-9bc3-4e43-8c84-744d677cca1c"
      unitRef="usd">569527000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE2LTUtMS0xLTA_5709ddcb-d9a9-4baa-89d1-2e58dd082b45"
      unitRef="usd">495704000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE4LTEtMS0xLTA_213aa1d0-3335-4f91-b039-88263ae53262"
      unitRef="usd">542512000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE4LTMtMS0xLTA_17556084-01dc-416c-ba6c-6505446e9439"
      unitRef="usd">516900000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzE4LTUtMS0xLTA_d873afa2-77c8-4bb9-89ef-999869d59a30"
      unitRef="usd">439578000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIwLTEtMS0xLTA_a9967617-7d53-4c5c-ba5a-f76408f20c74"
      unitRef="usd">259561000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIwLTMtMS0xLTA_179bbd0f-b5be-47cf-896f-09d6870728eb"
      unitRef="usd">257746000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIwLTUtMS0xLTA_2c147f59-bd30-4ffb-ac2e-a49ba1144775"
      unitRef="usd">207605000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIxLTEtMS0xLTA_e17a51c8-0f05-4c11-bc48-28f74d02336d"
      unitRef="usd">88363000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIxLTMtMS0xLTA_9fb3c757-949c-47c3-b20e-cfc9d6cb1b2c"
      unitRef="usd">81342000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIxLTUtMS0xLTA_4874c2ef-8dee-4b8d-941e-241e6b51d49c"
      unitRef="usd">63264000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIyLTEtMS0xLTA_d60adcd3-5a64-4e9a-9d31-f3f25e37a7ee"
      unitRef="usd">21662000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIyLTMtMS0xLTA_0f7d9ff6-819b-49ce-a6fa-b8fb1fafecb1"
      unitRef="usd">21445000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzIyLTUtMS0xLTA_061980e1-8995-45b6-a1e7-779a5d1fb896"
      unitRef="usd">16217000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <us-gaap:OperatingIncomeLoss
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI0LTEtMS0xLTA_07feef98-5157-4159-ad63-ccfadbf9c051"
      unitRef="usd">172926000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI0LTMtMS0xLTA_88287fe2-ddbc-4cda-b0df-2da18c7d4228"
      unitRef="usd">156367000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI0LTUtMS0xLTA_f8c28999-350d-4ef0-a6b7-7b2dd5a08f89"
      unitRef="usd">152492000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI2LTEtMS0xLTA_cf508d31-f110-48fd-ae7d-c3e151943559"
      unitRef="usd">2116000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI2LTMtMS0xLTA_bebcae67-8d6f-484c-b8be-ec4e0b033cc8"
      unitRef="usd">3471000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI2LTUtMS0xLTA_4935139c-c821-42ee-91d9-577e16e923a2"
      unitRef="usd">3378000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI3LTEtMS0xLTA_7e49795f-e093-4595-b9da-61de6d1c15ec"
      unitRef="usd">175042000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI3LTMtMS0xLTA_2b9c6064-83db-45fe-8eef-5467d6bb247f"
      unitRef="usd">159838000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI3LTUtMS0xLTA_70f53395-89f9-4725-bcc1-609296219d89"
      unitRef="usd">155870000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI4LTEtMS0xLTA_9f6c6f7e-92ae-49ff-970e-9525be70ca6e"
      unitRef="usd">-19778000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI4LTMtMS0xLTA_a7ad6071-7b6d-4e1c-9fdf-8047f6aa9f8a"
      unitRef="usd">13311000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI4LTUtMS0xLTA_a81af69f-03a7-4291-940f-c7e66f052622"
      unitRef="usd">8408000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI5LTEtMS0xLTA_eb3831a9-3664-4707-9cd0-fb6ac0762088"
      unitRef="usd">194820000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI5LTMtMS0xLTA_29c96422-20aa-4273-a57f-92eed1eb5fb9"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzI5LTUtMS0xLTA_512b4dcb-775f-46da-98ed-38f0acec0641"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMyLTEtMS0xLTA_212650e2-9c02-4db6-aaeb-bee5b9ffab0a"
      unitRef="usdPerShare">4.87</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMyLTMtMS0xLTA_547ed4ee-b35f-4164-a73e-d6c7b11cef9f"
      unitRef="usdPerShare">3.79</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMyLTUtMS0xLTA_827a2cc4-7a09-4e16-8d45-d28da6d9dabc"
      unitRef="usdPerShare">3.84</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMzLTEtMS0xLTA_d7d36e26-fb6d-433b-84c6-fc1f95a6855b"
      unitRef="usdPerShare">4.69</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMzLTMtMS0xLTA_0e0d25cd-e81c-4f65-88be-210b09e757ee"
      unitRef="usdPerShare">3.65</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDYvZnJhZzo0NTJhZTg5ZmM0Zjc0ZGUxYTBmMzliODNlNTNkNjRkZC90YWJsZTpkZmZkY2MwMTY4YjQ0MmFhODA3MTNlMDM3N2FkZmIxMy90YWJsZXJhbmdlOmRmZmRjYzAxNjhiNDQyYWE4MDcxM2UwMzc3YWRmYjEzXzMzLTUtMS0xLTA_fc112ea2-b928-4089-bcc5-b1e50060fd23"
      unitRef="usdPerShare">3.68</us-gaap:EarningsPerShareDiluted>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQtMS0xLTEtMA_95e2b77d-c08e-4995-a948-fa33a9c7a221"
      unitRef="usd">603623000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQtMy0xLTEtMA_d92cf3a1-7f60-490c-9967-4eca107c6e46"
      unitRef="usd">232682000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzUtMC0xLTEtMC90ZXh0cmVnaW9uOmJiNWJhZGExM2ZjYTQ0OTQ5ZTM3NDY1ZmMyNWYwZmRkXzI3NDg3NzkwNjk2MDQ_28b91a53-23a9-4864-8e98-7ca2f4a572ed"
      unitRef="usd">9255000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzUtMC0xLTEtMC90ZXh0cmVnaW9uOmJiNWJhZGExM2ZjYTQ0OTQ5ZTM3NDY1ZmMyNWYwZmRkXzI3NDg3NzkwNjk1OTU_d4b3aefb-c738-4d95-ab3f-e92d638c02f9"
      unitRef="usd">5738000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzUtMS0xLTEtMA_0e724570-a721-410f-a35f-da8a9d45e51e"
      unitRef="usd">382319000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzUtMy0xLTEtMA_31abf79a-a562-47db-a2cf-64bcfad18d8d"
      unitRef="usd">374089000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:ShortTermInvestments
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzYtMS0xLTEtMA_af745067-4d7f-4070-afa2-a7cffcb37219"
      unitRef="usd">72187000</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzYtMy0xLTEtMA_491a4f49-2970-424d-ba36-ca0b04bf6ccb"
      unitRef="usd">39399000</us-gaap:ShortTermInvestments>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzctMS0xLTEtMA_8f2c7cfa-440a-4034-946d-a03dbcf2100d"
      unitRef="usd">30864000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzctMy0xLTEtMA_cfabdf32-ddbc-472b-872c-3c59afa26af6"
      unitRef="usd">24717000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:IncomeTaxReceivable
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzgtMS0xLTEtMA_68d18b21-06ed-4ac1-b344-930495aefa05"
      unitRef="usd">21598000</us-gaap:IncomeTaxReceivable>
    <us-gaap:IncomeTaxReceivable
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzgtMy0xLTEtMA_32058536-8907-4fbc-9434-47e004938e9d"
      unitRef="usd">6482000</us-gaap:IncomeTaxReceivable>
    <us-gaap:OtherAssetsCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzktMS0xLTEtMA_55112f65-6d0e-43f7-b0ed-56e03a4ed4af"
      unitRef="usd">2479000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzktMy0xLTEtMA_78b77321-d4fb-44cb-ae6c-6ecf1e670565"
      unitRef="usd">2328000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEwLTEtMS0xLTA_83036ed0-a3d4-4f1c-b0ca-003c7aab0640"
      unitRef="usd">1113070000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEwLTMtMS0xLTA_531ce22f-3c54-41ec-8a28-d8c0f30421f7"
      unitRef="usd">679697000</us-gaap:AssetsCurrent>
    <us-gaap:AccountsReceivableNetNoncurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEyLTEtMS0xLTA_c9dc6a81-d627-49d1-b2cc-014122e9d9fd"
      unitRef="usd">21417000</us-gaap:AccountsReceivableNetNoncurrent>
    <us-gaap:AccountsReceivableNetNoncurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEyLTMtMS0xLTA_3760a9de-8fdf-4747-8f74-1339a3888646"
      unitRef="usd">22432000</us-gaap:AccountsReceivableNetNoncurrent>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEzLTEtMS0xLTA_4b39945f-7f30-4cfc-8c3b-04e6fbd92328"
      unitRef="usd">18734000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzEzLTMtMS0xLTA_254865ae-a812-49eb-9cbf-d2994ae0a1d3"
      unitRef="usd">18992000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE0LTEtMS0xLTA_dab9892b-54ed-45ef-b9d8-5b723707c3cc"
      unitRef="usd">168004000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE0LTMtMS0xLTA_80821079-fc85-4348-9a46-53b8c82bf0eb"
      unitRef="usd">171861000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE2LTEtMS0xLTA_002ae37e-0e09-4179-b2f4-3785e1bb03a6"
      unitRef="usd">838428000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE2LTMtMS0xLTA_dc1c201c-6d40-411b-ae77-8adc4df130d0"
      unitRef="usd">840117000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE3LTEtMS0xLTA_a8a6964b-37ae-4fc8-9e95-3740e79bf3bd"
      unitRef="usd">331189000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE3LTMtMS0xLTA_742f559e-6e40-4d91-a5df-8b87bb48fb5b"
      unitRef="usd">378914000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Investments
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE3LTEtMS0xLTQyMDQ_2623f71b-d076-460c-9a76-dc03212f1f82"
      unitRef="usd">82640000</us-gaap:Investments>
    <us-gaap:Investments
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE3LTMtMS0xLTQyMDQ_cd2ed39e-db64-4a3c-b4f2-f96df819d3c6"
      unitRef="usd">42235000</us-gaap:Investments>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE4LTEtMS0xLTA_4b76913d-26fa-4b55-80ea-86d63a0632fe"
      unitRef="usd">33792000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE4LTMtMS0xLTA_af5e6c96-d028-4175-a7a5-4cc2c298bb66"
      unitRef="usd">37366000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE5LTEtMS0xLTA_89aa7896-bb20-4b45-bc93-4b15af324f9d"
      unitRef="usd">2607274000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzE5LTMtMS0xLTA_f0a4c076-0d75-4407-ae1a-19b8b5d21e3b"
      unitRef="usd">2191614000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzIzLTEtMS0xLTA_3c80956d-50e5-4573-aa5f-277241a71db2"
      unitRef="usd">14011000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzIzLTMtMS0xLTA_bd909405-24cc-4620-a424-57d8ed267c3b"
      unitRef="usd">14977000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI0LTEtMS0xLTA_901cce80-4ea4-452e-80f0-f878cd306860"
      unitRef="usd">83084000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI0LTMtMS0xLTA_08fbee10-0849-469d-ad40-db91220e3e8f"
      unitRef="usd">75234000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI1LTEtMS0xLTA_321b979d-b733-43b3-b23b-55245e89b10e"
      unitRef="usd">5904000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI1LTMtMS0xLTA_12939f7e-1fb6-40bf-9501-ddc436beefbb"
      unitRef="usd">6387000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI2LTEtMS0xLTA_51cd011b-706f-457f-9658-719613240901"
      unitRef="usd">461278000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI2LTMtMS0xLTA_e8eb7a03-3151-4aee-ac11-56be50365d1c"
      unitRef="usd">412495000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI3LTEtMS0xLTA_05fae687-f8dd-4044-b2b2-15e984f4d8f7"
      unitRef="usd">564277000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI3LTMtMS0xLTA_ee4f7a6e-7eee-4edd-ace4-f1cd216fb769"
      unitRef="usd">509093000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermLineOfCredit
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI5LTEtMS0xLTA_ba308d47-af1b-46ad-bb2e-bddd7fb7e6a1"
      unitRef="usd">0</us-gaap:LongTermLineOfCredit>
    <us-gaap:LongTermLineOfCredit
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzI5LTMtMS0xLTA_047061a8-e323-4945-a020-2b80d920de89"
      unitRef="usd">0</us-gaap:LongTermLineOfCredit>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMwLTEtMS0xLTA_f9238bc4-6cb7-490f-9154-2932d3de4a02"
      unitRef="usd">100000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMwLTMtMS0xLTA_c8121e86-83d3-4687-bbfb-b6c28e1c8d1f"
      unitRef="usd">199000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMxLTEtMS0xLTA_eb7a7c48-b124-4214-8477-bb846903a91f"
      unitRef="usd">40507000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMxLTMtMS0xLTA_4f7799a6-d885-42b4-b481-6db759f900f9"
      unitRef="usd">48442000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMyLTEtMS0xLTA_41ff3f30-11d5-42f1-98da-389e77f622d6"
      unitRef="usd">16279000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzMyLTMtMS0xLTA_27a25826-522b-43df-8c07-a3fe655f52bf"
      unitRef="usd">16822000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:CommitmentsAndContingencies
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM0LTEtMS0xLTA_83900a3a-08bd-443a-b702-494bf05dbcc9"
      unitRef="usd">0</us-gaap:CommitmentsAndContingencies>
    <us-gaap:CommitmentsAndContingencies
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM0LTMtMS0xLTA_31741e25-6d12-4a3d-846f-0ff7de40d236"
      unitRef="usd">0</us-gaap:CommitmentsAndContingencies>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTI1_49f334dc-7f17-41ab-be71-a780ccb25a61"
      unitRef="usdPerShare">10.00</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTI1_610e702a-0181-4bf7-8b05-7292f5899b8f"
      unitRef="usdPerShare">10.00</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTM3_4222990b-b824-41fb-af4f-c4abbf67d7dc"
      unitRef="shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTM3_cb8fb428-e467-48ee-87d3-80644e5415da"
      unitRef="shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTQ0_b599c808-fbaa-4591-9da8-c7e34282a80f"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTAtMS0xLTAvdGV4dHJlZ2lvbjo0YWE3ODJmNWJlNDA0NmI0OWU2NTU4YzJhZmJkNDc4Ml8yNzQ4Nzc5MDY5NTQ0_cf5a8bda-8e36-4894-97db-084f2ca621d1"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockValue
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTEtMS0xLTA_e17e9c29-ff58-4af5-921e-c5f312c40714"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM3LTMtMS0xLTA_1657b95b-b487-431a-a705-3bb6e599cb2e"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTU2_2347e6f1-ed96-47db-b9c8-bf0a34cfc192"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTU2_2706881b-a822-46b5-bab5-7eb245023179"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTc0_558a5b86-6f12-4d83-bce5-64168102af8d"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTc0_ef6745c9-7132-499f-8b7d-e629b7f6ed5b"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTkw_127c1bcf-2ceb-416a-acb2-a7ba3a0462ef"
      unitRef="shares">48147969</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTAtMS0xLTAvdGV4dHJlZ2lvbjo0OWQwNDVkODQ4Mjg0OGRlODllMDdkYWVmYjU3MDg2OV8yNzQ4Nzc5MDY5NTkw_eb514b03-6721-418e-beec-4d932da1d784"
      unitRef="shares">48147969</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTEtMS0xLTA_3206a52b-b674-49f9-92f2-d399aace2665"
      unitRef="usd">481000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM4LTMtMS0xLTA_3d73553b-fbc1-4d14-a274-c2fe829c7121"
      unitRef="usd">481000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM5LTEtMS0xLTA_04d2f09f-4897-42dd-a7d8-df4d9a7bd385"
      unitRef="usd">905332000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzM5LTMtMS0xLTA_7b59bfce-3b41-4d92-a64e-958b2e4f6b1c"
      unitRef="usd">739478000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQwLTEtMS0xLTA_fecc1fe5-bb02-4946-ae16-62d77e58e5bd"
      unitRef="usd">-46000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQwLTMtMS0xLTA_59b542c3-69a2-4c68-a3e6-f34a7c0529af"
      unitRef="usd">-46000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQxLTEtMS0xLTA_c1059c96-4795-4d70-8fdf-fb6b9d7fa36e"
      unitRef="usd">1112156000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQxLTMtMS0xLTA_a91600f1-70e2-433f-ad53-36ed0154cf74"
      unitRef="usd">917336000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockShares
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQyLTAtMS0xLTAvdGV4dHJlZ2lvbjoyZDg2ZjMyYmYwMGE0Nzg2YWRlN2FmYzdjZDIzN2JlYV8yNzQ4Nzc5MDY5NTQw_3d61b501-4521-46e2-ad15-b4fe10452aa8"
      unitRef="shares">7608627</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQyLTAtMS0xLTAvdGV4dHJlZ2lvbjoyZDg2ZjMyYmYwMGE0Nzg2YWRlN2FmYzdjZDIzN2JlYV8yNzQ4Nzc5MDY5NTgx_712a8e2f-5824-46e6-9138-8cd7c3e64c36"
      unitRef="shares">8839352</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQyLTEtMS0xLTA_d3b10156-0284-48ff-bf58-42ef4e7ef5ed"
      unitRef="usd">31812000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQyLTMtMS0xLTA_1acdb895-41fb-4921-9a21-d2970577ddac"
      unitRef="usd">40191000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQzLTEtMS0xLTA_c5c6219f-80a2-40e0-9e26-fb852f0ef627"
      unitRef="usd">1986111000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQzLTMtMS0xLTA_a90205a8-f596-4e84-a479-5c971fecc54a"
      unitRef="usd">1617058000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQ0LTEtMS0xLTA_a551a899-9fef-4d64-8297-4d9db36f8fe8"
      unitRef="usd">2607274000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMDkvZnJhZzphY2M0NzU2ZDExYjM0YjM0OTFlMDQwMGNkZGRmMDhlYS90YWJsZTpmZjM2ZDRjNDUwZTQ0MTNiOTY3YTkzZTEyY2EzM2M3Mi90YWJsZXJhbmdlOmZmMzZkNGM0NTBlNDQxM2I5NjdhOTNlMTJjYTMzYzcyXzQ0LTMtMS0xLTA_ea3729f0-ed05-4e45-9074-ce18e93d7e75"
      unitRef="usd">2191614000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzItMS0xLTEtMA_b49eb374-ab8c-4662-93f4-5f98e21d71f4"
      unitRef="usd">194820000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzItMy0xLTEtMA_32b282d9-a26e-4cea-b144-dbb6eaa5b43e"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzItNS0xLTEtMA_18d4b489-c5ab-4b3f-84f9-8254bccac508"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzQtMS0xLTEtMA_4d176cd3-3618-4884-a013-8cb2d81e7e55"
      unitRef="usd">81657000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzQtMy0xLTEtMA_ffcd48c7-328d-4831-bdc8-106b759a39fb"
      unitRef="usd">76672000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzQtNS0xLTEtMA_68d40a4b-03dd-48f4-b692-bab5f4343969"
      unitRef="usd">61759000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:ShareBasedCompensation
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzUtMS0xLTEtMA_c3e413e5-5b4e-47e2-8e6d-7ffdacd9cdf4"
      unitRef="usd">67365000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzUtMy0xLTEtMA_69bf965a-b085-4ed6-9830-9d0bafc8aca9"
      unitRef="usd">59967000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzUtNS0xLTEtMA_52bbab36-2f31-456a-abd9-b95df8b93845"
      unitRef="usd">52740000</us-gaap:ShareBasedCompensation>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzYtMS0xLTEtMA_924769f5-853e-4d59-a526-8f374542f137"
      unitRef="usd">3517000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzYtMy0xLTEtMA_8156a393-23a0-4de1-a7d5-f159e01dcd3a"
      unitRef="usd">1636000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzYtNS0xLTEtMA_7f22517f-70dc-4c47-b607-89510706ee04"
      unitRef="usd">-569000</us-gaap:ProvisionForDoubtfulAccounts>
    <tyl:OperatingLeaseRightOfUseAssetsNonCash
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzctMS0xLTEtMA_0ed7d0ce-d814-493f-93bb-9181393697bb"
      unitRef="usd">5782000</tyl:OperatingLeaseRightOfUseAssetsNonCash>
    <tyl:OperatingLeaseRightOfUseAssetsNonCash
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzctMy0xLTEtMA_c1e721a3-05b6-41e9-b15e-55f1bbcfae9f"
      unitRef="usd">5397000</tyl:OperatingLeaseRightOfUseAssetsNonCash>
    <tyl:OperatingLeaseRightOfUseAssetsNonCash
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzctNS0xLTEtMA_53f3c104-2024-43bc-9f33-3704c56adc04"
      unitRef="usd">0</tyl:OperatingLeaseRightOfUseAssetsNonCash>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzgtMS0xLTEtMA_15498e06-9897-4a54-afe0-5b4939f59b31"
      unitRef="usd">-7936000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzgtMy0xLTEtMA_df8dc8e1-0f3d-4d19-91fb-2be83e4f9b9d"
      unitRef="usd">-6088000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzgtNS0xLTEtMA_bb721c1c-09f6-48fd-9589-5d6c5413e9e0"
      unitRef="usd">-5069000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEwLTEtMS0xLTA_aa1e77f1-2e5f-4d87-b9a3-c836410fa198"
      unitRef="usd">10733000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEwLTMtMS0xLTA_7d93cc34-5ab3-4518-84d2-12f88cb5ecf1"
      unitRef="usd">65738000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEwLTUtMS0xLTA_e254d080-f540-412c-adc5-800c4ef4dbf9"
      unitRef="usd">50916000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzExLTEtMS0xLTA_cbb1a086-d8c7-4a72-8a0f-6e1cda6e4ed1"
      unitRef="usd">15117000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzExLTMtMS0xLTA_54a08128-c4cf-43ea-9030-f733f007fd13"
      unitRef="usd">1925000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzExLTUtMS0xLTA_6db93668-c1a0-4b2a-b64a-161087d4d58a"
      unitRef="usd">-6642000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEyLTEtMS0xLTA_ee33934a-5a12-4053-9251-910501ed098d"
      unitRef="usd">8304000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEyLTMtMS0xLTA_4a6a1fff-6fc3-46ae-b47c-fa744bf1c1d0"
      unitRef="usd">8976000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEyLTUtMS0xLTA_a1f254fc-4381-4943-9605-46e7f5796f15"
      unitRef="usd">588000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEzLTEtMS0xLTA_32cbfd24-4e7d-4420-8fa2-3f8722ce83c0"
      unitRef="usd">-967000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEzLTMtMS0xLTA_f6b630f3-1e38-43eb-93aa-7c6bbf459ec8"
      unitRef="usd">7403000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzEzLTUtMS0xLTA_2b259299-d919-4a17-9993-4e7ccc8241ce"
      unitRef="usd">-2416000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <tyl:IncreaseDecreaseInOperatingLeaseLiabilities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE0LTEtMS0xLTA_8c9cdc22-edb0-48c7-b043-0b870a49e28d"
      unitRef="usd">-6549000</tyl:IncreaseDecreaseInOperatingLeaseLiabilities>
    <tyl:IncreaseDecreaseInOperatingLeaseLiabilities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE0LTMtMS0xLTA_5a28dada-e343-4516-9897-2d83e336fcd4"
      unitRef="usd">-6113000</tyl:IncreaseDecreaseInOperatingLeaseLiabilities>
    <tyl:IncreaseDecreaseInOperatingLeaseLiabilities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE0LTUtMS0xLTA_133750b7-dde7-4e99-82bc-30d06a0eb084"
      unitRef="usd">0</tyl:IncreaseDecreaseInOperatingLeaseLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE1LTEtMS0xLTA_26c86b58-9a66-4831-9e9a-64c446509cc1"
      unitRef="usd">2870000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE1LTMtMS0xLTA_5f4e099f-59e5-438c-a3c1-063887324c83"
      unitRef="usd">1516000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE1LTUtMS0xLTA_59919222-1a10-4d68-a3f5-005317c2579f"
      unitRef="usd">-2445000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE2LTEtMS0xLTA_a4ffc364-6df1-4420-81b4-e9267b2a9729"
      unitRef="usd">48684000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE2LTMtMS0xLTA_370ddb4a-da1e-4dea-a428-bac88803109b"
      unitRef="usd">44442000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE2LTUtMS0xLTA_00ec15df-d3ee-436c-9c86-40c88ba992d0"
      unitRef="usd">43603000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE3LTEtMS0xLTA_70d1c826-5618-4fd4-8c4e-f1c06dc52e32"
      unitRef="usd">355089000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE3LTMtMS0xLTA_eb05d696-b449-4c11-8f2c-4a443be17df7"
      unitRef="usd">254720000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzE3LTUtMS0xLTA_deef45f1-92df-4bd5-b043-043cffb03e28"
      unitRef="usd">250203000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIwLTEtMS0xLTA_fe44ccba-1aef-4045-922e-c8e95d4af46c"
      unitRef="usd">22690000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIwLTMtMS0xLTA_d10b15a0-b160-4a9f-bfdb-d8d52aa96347"
      unitRef="usd">37236000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIwLTUtMS0xLTA_f6b1d76d-5b91-499b-8475-ee2b3a5a3ec7"
      unitRef="usd">27424000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIxLTEtMS0xLTA_0a3ee765-ef7f-4a4c-971b-71b96b87e31e"
      unitRef="usd">156618000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIxLTMtMS0xLTA_59e2e0aa-6858-4251-b60e-7c3dada987be"
      unitRef="usd">54742000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIxLTUtMS0xLTA_b66ba26a-80f4-4f09-9df8-969704dbd454"
      unitRef="usd">115625000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIyLTEtMS0xLTA_68042b43-558e-4789-9925-cfc7ccd01098"
      unitRef="usd">82742000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIyLTMtMS0xLTA_8cedf24f-750c-44a8-af98-126dbb3426a6"
      unitRef="usd">70796000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIyLTUtMS0xLTA_e5f47e77-2ee7-4809-b34b-e892b0c99da2"
      unitRef="usd">81205000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTEtMS0xLTE0MzY_fbbe0189-f20d-4e8e-ac5b-51d478435974"
      unitRef="usd">10000000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTMtMS0xLTE0MzY_50e58207-79a4-496c-ad5e-43dbf6a016bb"
      unitRef="usd">0</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTUtMS0xLTE0MzY_89174a7d-264d-485d-b4fe-3bec3d2fb537"
      unitRef="usd">0</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:ProceedsFromSaleOfEquityMethodInvestments
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTEtMS0xLTE0MzY_100cb5e1-2774-41f5-8ff3-017be92fa80d"
      unitRef="usd">15000000</us-gaap:ProceedsFromSaleOfEquityMethodInvestments>
    <us-gaap:ProceedsFromSaleOfEquityMethodInvestments
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTMtMS0xLTE0MzY_7d10d748-5935-4b25-b3ee-fd5bd43cfd8b"
      unitRef="usd">0</us-gaap:ProceedsFromSaleOfEquityMethodInvestments>
    <us-gaap:ProceedsFromSaleOfEquityMethodInvestments
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTUtMS0xLTE0MzY_f8e23d7c-16dd-4f14-8f9d-4c13e0624730"
      unitRef="usd">0</us-gaap:ProceedsFromSaleOfEquityMethodInvestments>
    <us-gaap:PaymentsForSoftware
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTEtMS0xLTA_1371d549-4e61-4ef2-a114-7b9f18cb3903"
      unitRef="usd">5776000</us-gaap:PaymentsForSoftware>
    <us-gaap:PaymentsForSoftware
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTMtMS0xLTA_ae2280ff-c58a-400a-9523-7cf5aad379b1"
      unitRef="usd">4804000</us-gaap:PaymentsForSoftware>
    <us-gaap:PaymentsForSoftware
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzIzLTUtMS0xLTA_d9f22f53-b5f8-47bc-88ab-d718223533d5"
      unitRef="usd">0</us-gaap:PaymentsForSoftware>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTEtMS0xLTA_3c9d1514-917c-416b-a3fc-f4c674b59533"
      unitRef="usd">1292000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTMtMS0xLTA_8533d0d1-8497-4d43-b910-c7c3cecdadd7"
      unitRef="usd">218734000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI0LTUtMS0xLTA_155a14e0-14cc-44f8-8463-e0ced9a69155"
      unitRef="usd">178093000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI1LTEtMS0xLTA_82cc2213-e2c2-4553-bba5-9a012f9f0ae0"
      unitRef="usd">-314000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI1LTMtMS0xLTA_18e6c1d6-1b75-4035-acd3-ff795d2eca05"
      unitRef="usd">295000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI1LTUtMS0xLTA_80e7f6b1-a333-45c3-8276-84f2793f1540"
      unitRef="usd">-1682000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI2LTEtMS0xLTA_b3dc1c48-bc1e-4e64-b8ea-15f0118b0643"
      unitRef="usd">-98320000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI2LTMtMS0xLTA_79f27f90-d2ba-44ee-8a9a-7d0a2b4acee7"
      unitRef="usd">-245015000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI2LTUtMS0xLTA_391c64de-c12f-48d3-b8ec-a4a478506593"
      unitRef="usd">-238255000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI5LTEtMS0xLTA_9f53e55a-0d5d-49a6-bfe3-7f1d35205105"
      unitRef="usd">0</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI5LTMtMS0xLTA_7fe2d8d2-6fee-4c76-b9bb-e4d29a9e8016"
      unitRef="usd">0</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzI5LTUtMS0xLTA_6760ca7e-d8b7-48a0-962c-d5a399b6eb89"
      unitRef="usd">0</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMwLTEtMS0xLTA_42ce5e5d-1770-4dd2-9a10-0f0c590d977b"
      unitRef="usd">15484000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMwLTMtMS0xLTA_e1875e58-c2fd-4fcc-8a9f-6a6787ab39d9"
      unitRef="usd">17786000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMwLTUtMS0xLTA_8bc80fb7-ba64-45a9-9c97-981bbb2e40f4"
      unitRef="usd">146553000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTEtMS0xLTE0NDY_66a8f9ce-755a-4b62-87db-077069553b09"
      unitRef="usd">5619000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTMtMS0xLTE0NDY_e9af66d9-1fbd-42d2-bddb-d9bd551e2213"
      unitRef="usd">0</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTUtMS0xLTE0NDY_012dae81-eb2f-4f68-9825-d431e290ed30"
      unitRef="usd">0</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMxLTEtMS0xLTA_16941dbf-c6d5-4d7c-9fcc-fa40514de4e1"
      unitRef="usd">124363000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMxLTMtMS0xLTA_5726504d-d0c0-45a1-b68f-473fc19aed42"
      unitRef="usd">96908000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMxLTUtMS0xLTA_a7647f43-2445-4a95-ade8-b11daea6b727"
      unitRef="usd">74907000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockPlans
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMyLTEtMS0xLTA_9942d11e-4a6f-4d51-ab54-925c907b8a6b"
      unitRef="usd">10912000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:ProceedsFromStockPlans
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMyLTMtMS0xLTA_9fb4a17a-8800-4cee-ab1f-1cd61f6a048e"
      unitRef="usd">9576000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:ProceedsFromStockPlans
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMyLTUtMS0xLTA_79a05ce1-1e65-4be2-b3a4-d3deeec3d54a"
      unitRef="usd">8051000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTEtMS0xLTA_1951ff88-c9bc-4c75-88d8-e1db4fb4b921"
      unitRef="usd">114172000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTMtMS0xLTA_37eb21b1-ce90-4ef5-82d5-e26d4a46ab2c"
      unitRef="usd">88698000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzMzLTUtMS0xLTA_d2072824-6e92-4d48-8d77-d102a031d05a"
      unitRef="usd">-63595000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM1LTEtMS0xLTA_14a36423-6e33-4018-8d87-cfaf212b35fb"
      unitRef="usd">370941000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM1LTMtMS0xLTA_62f18e23-cd0b-4a29-8758-147b1f6f636c"
      unitRef="usd">98403000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM1LTUtMS0xLTA_7643e12d-bbfe-4354-92cb-65937844589a"
      unitRef="usd">-51647000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM2LTEtMS0xLTA_d82ff3e6-5fad-411d-9980-a301587e47c9"
      unitRef="usd">232682000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM2LTMtMS0xLTA_7f70e877-d7c2-4aea-95a8-fdae56488f5a"
      unitRef="usd">134279000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM2LTUtMS0xLTA_ab161544-7880-45a6-8356-7a359e9104fb"
      unitRef="usd">185926000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM3LTEtMS0xLTA_bc83a312-5966-4729-a9ac-f54eb0ebaeb1"
      unitRef="usd">603623000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM3LTMtMS0xLTA_b7503072-6016-402b-8cfd-505c2d938b09"
      unitRef="usd">232682000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTUvZnJhZzo5Nzg3NTIwOGEwMWE0OTU3YThkNDgzYTk0M2UyMzYzOS90YWJsZTo2MTIzOTIyNjM0MDA0NmY5ODA2MjdmZGNhNDE0OTVkMS90YWJsZXJhbmdlOjYxMjM5MjI2MzQwMDQ2Zjk4MDYyN2ZkY2E0MTQ5NWQxXzM3LTUtMS0xLTA_b0ddecd5-8197-4c26-bbfe-d6ca2bf26b8e"
      unitRef="usd">134279000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:SharesIssued
      contextRef="idf223f37a83546f28faf8e1352d1d155_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMS0xLTEtMA_9073ea86-dfd8-40d7-aae2-edf6f16e48dd"
      unitRef="shares">48148000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="idf223f37a83546f28faf8e1352d1d155_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMy0xLTEtMA_b2164537-b453-44e2-998a-729bd1af57e5"
      unitRef="usd">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i370301866763430c80bdb1dbf9376fd4_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItNS0xLTEtMA_5cead5a9-7f5a-4338-827f-7850ca7a66ef"
      unitRef="usd">626867000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i84e31879d6de46189bf654c346646ad8_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItNy0xLTEtMA_41de532a-4145-4eed-95b4-3284bd749982"
      unitRef="usd">-46000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5acd2706ae714def8383f42b3d4180a5_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItOS0xLTEtMA_114c9494-a3d5-484d-baa3-25da8f40ce9c"
      unitRef="usd">624463000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="id2bf4b9faebc4ff290dc251edf4b6bae_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMTEtMS0xLTA_51f4f3dc-b3eb-4893-a946-b32adedaad44"
      unitRef="shares">10262000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="id2bf4b9faebc4ff290dc251edf4b6bae_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMTMtMS0xLTA_c7733f1f-d879-4780-92fd-8f233f86ebb7"
      unitRef="usd">-60029000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzItMTUtMS0xLTA_beab8886-8bdf-4b81-be24-2b157fbea164"
      unitRef="usd">1191736000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i3c70a7aba97846fe9a0bc5653fd1b1a3_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzMtOS0xLTEtMA_ad479023-cf73-44bd-a0ac-0dcf8db9d17c"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzMtMTUtMS0xLTA_07d482c5-35ae-4575-94be-d447d67a8108"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i7b6930cb71df41bb9bb8f40e55f1bf01_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzQtNS0xLTEtMA_3fbb45fd-14df-498e-9abd-096fdd0936d9"
      unitRef="usd">44458000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzQtMTEtMS0xLTA_ea235086-6f26-41fa-b7cc-330cccdee08c"
      unitRef="shares">1126000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzQtMTMtMS0xLTA_4f7c3165-4c6a-48bc-8a89-c6bfb566d664"
      unitRef="usd">30449000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzQtMTUtMS0xLTA_f32ef858-6f6b-4e2d-9bbe-2878fd8b9169"
      unitRef="usd">74907000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i7b6930cb71df41bb9bb8f40e55f1bf01_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzUtNS0xLTEtMA_fa54d087-02fb-4b6c-ae19-3c60283acbb1"
      unitRef="usd">52740000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzUtMTUtMS0xLTA_247ebb84-802e-45e8-b2a0-8e5341bddb9d"
      unitRef="usd">52740000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i7b6930cb71df41bb9bb8f40e55f1bf01_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzYtNS0xLTEtMA_3822afb3-26f2-4114-8243-e7352762f67b"
      unitRef="usd">7370000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzYtMTEtMS0xLTA_47776e0d-77b0-48c9-8a51-b1cc766a8b74"
      unitRef="shares">45000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzYtMTMtMS0xLTA_4c120079-00d3-439f-898b-080dcc613453"
      unitRef="usd">681000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzYtMTUtMS0xLTA_9e1f89ac-2956-47b2-8952-ffd74ce56dd6"
      unitRef="usd">8051000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzctMTEtMS0xLTA_2c500787-f7ea-45b1-998c-6cd520dafeaa"
      unitRef="shares">781000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="icae6d928468f4308a26724f751f18e33_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzctMTMtMS0xLTA_a59fa01e-d893-47e6-947c-04872f82ddb3"
      unitRef="usd">150050000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzctMTUtMS0xLTA_96b6a96b-b6b6-4274-b51f-585e20e2da23"
      unitRef="usd">150050000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:SharesIssued
      contextRef="if74df7a19c3942cb9ff75a6a5d6f1812_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMS0xLTEtMA_a0b84b59-28d4-45fb-9923-75163a5c996d"
      unitRef="shares">48148000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="if74df7a19c3942cb9ff75a6a5d6f1812_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMy0xLTEtMA_377a715f-9bd8-4c42-81e9-839833296037"
      unitRef="usd">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia77fa689a8334d86820dc4579345cd38_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtNS0xLTEtMA_0ccf1f5f-02b7-4058-9caf-98e04c7daf26"
      unitRef="usd">731435000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i016e472e4d6a4a3b833a29b7946751a9_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtNy0xLTEtMA_af99fe3f-7105-48a2-9804-4dee4795f08e"
      unitRef="usd">-46000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5fc73f07950541c2bc26454cd9193567_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtOS0xLTEtMA_4c7c871e-abe3-4257-99e8-e782386f0bcb"
      unitRef="usd">771925000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="if63f6f530f2947ac8641e5d47d2459ac_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMTEtMS0xLTA_2fd755d3-bd44-414c-83e3-adc9e59ac5cb"
      unitRef="shares">9872000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="if63f6f530f2947ac8641e5d47d2459ac_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMTMtMS0xLTA_4d6fb804-ea02-45b8-bfc2-994a550d5189"
      unitRef="usd">-178949000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzgtMTUtMS0xLTA_92540d08-9171-4e16-8fc1-4c45112d0a53"
      unitRef="usd">1324846000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i6a4f6e2ccf094812a26851504a3c4697_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzktOS0xLTEtMA_9a6c29f9-5e89-4322-abfa-850d65397d3a"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzktMTUtMS0xLTA_dfcf5794-bb37-423d-a0c3-15e63e0790ad"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:StockholdersEquity
      contextRef="ic229aec4702c4eedb9420f1f1c7aa168_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTktMS0xLTQz_85144cda-5212-4702-91ed-026e31065327"
      unitRef="usd">-1116000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if652526c5d564fdc83d5d5e0b7cad7ce_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTE1LTEtMS0zMDc_e75c1275-6cd4-4cf8-ab06-83370a11fa2b"
      unitRef="usd">-1116000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="ib2a82e2e40424ebd9aa2d7e4c88c8db6_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTUtMS0xLTA_cc67516b-0d1a-4c1e-9cf7-d6653e1b9c8e"
      unitRef="usd">-52833000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTExLTEtMS0w_d5d1aa60-e4e8-46ad-b877-a1381bb53700"
      unitRef="shares">1075000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTEzLTEtMS0w_3bcdf2e3-0363-439e-987f-5c4868cea5ac"
      unitRef="usd">149741000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEwLTE1LTEtMS0w_5bf62d29-4a30-4a99-89cb-e4f40d043d82"
      unitRef="usd">96908000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTExLTEtMS0xMzE0_4316234e-cd9a-4ab7-be3c-1e8627ac70fb"
      unitRef="shares">23000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTEzLTEtMS0xMzE0_6c67971f-ae37-48b9-bee4-ca58ae101317"
      unitRef="usd">-5361000</tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTEzLTEtMS0xMzE0_83e9391c-9187-4b3c-99a3-fc89bffb7079"
      unitRef="usd">5361000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTE1LTEtMS0xMzE0_e494f447-7370-4d17-82ed-bd2892df02ae"
      unitRef="usd">5361000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ib2a82e2e40424ebd9aa2d7e4c88c8db6_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzExLTUtMS0xLTA_bbb1a23d-bd7c-4006-9d81-958c0099cc64"
      unitRef="usd">59967000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzExLTE1LTEtMS0w_f1ca7c72-ffeb-4d54-9fa9-3da440dae455"
      unitRef="usd">59967000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ib2a82e2e40424ebd9aa2d7e4c88c8db6_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTUtMS0xLTA_d35ed106-acf6-4cb0-85cf-6252804399e6"
      unitRef="usd">909000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTExLTEtMS0w_e992105e-d89f-4339-9e6d-163499fbbb4d"
      unitRef="shares">53000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTEzLTEtMS0w_a6a81519-f4fb-4ea1-85a0-fde3031a5aa8"
      unitRef="usd">8667000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEyLTE1LTEtMS0w_94d95152-d75f-492e-886d-3e2b088862ec"
      unitRef="usd">9576000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEzLTExLTEtMS0w_2f147e27-00fe-40c0-b6e3-4b20f57c9650"
      unitRef="shares">72000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEzLTEzLTEtMS0w_fc3a7c8f-698d-46e8-a8ee-ad5d0f1f8147"
      unitRef="usd">14289000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzEzLTE1LTEtMS0w_b29ea2b5-559d-4340-88ec-b040ee07fd8e"
      unitRef="usd">14289000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:SharesIssued
      contextRef="id48ae9bc0d4f4b42a3c41cf57e68c56c_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTEtMS0xLTA_a4e241ae-f5db-40b7-969e-91a2d3317d07"
      unitRef="shares">48148000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="id48ae9bc0d4f4b42a3c41cf57e68c56c_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTMtMS0xLTA_a049c8b7-82d9-492f-97ec-8cece2114af7"
      unitRef="usd">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i45ce7136c2a8459284d712a29362fee9_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTUtMS0xLTA_ed799228-b739-44f6-b921-d34ce876ee4a"
      unitRef="usd">739478000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9ee1619e595146ed837722870c9abb71_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTctMS0xLTA_bf8bdd4e-46ac-4ad4-9b4f-674b3c5ca5fb"
      unitRef="usd">-46000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iadef3649eac545168fc9afa6d9c92254_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTktMS0xLTA_c5c37669-b0fc-4c11-bdb2-7efb9241dc9a"
      unitRef="usd">917336000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="i7ba5419930ea446ab7a1d368294d235f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTExLTEtMS0w_36bfa23b-8fc8-4f09-9b0e-1d204c85789a"
      unitRef="shares">8839000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i7ba5419930ea446ab7a1d368294d235f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTEzLTEtMS0w_094d03c1-ce75-4fe7-89b0-fc75eec97e05"
      unitRef="usd">-40191000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE0LTE1LTEtMS0w_35431877-04e6-436a-ab7f-3a09b93712e6"
      unitRef="usd">1617058000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i3cb7d2d57c82434abafa888df519b0b4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE1LTktMS0xLTA_22aac242-1783-4f33-a49c-3a8e0c63a7cb"
      unitRef="usd">194820000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE1LTE1LTEtMS0w_e3878ab8-781e-4ac6-af70-eb292b813cfa"
      unitRef="usd">194820000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="ib7bb27ddbf7242a286b49a1ff342b735_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE3LTUtMS0xLTA_87f9b1f7-dc6f-4baf-b608-9a8a5008a851"
      unitRef="usd">90636000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE3LTExLTEtMS0w_6b28d9c0-b04c-4cf5-adac-3d76c25733ad"
      unitRef="shares">1283000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE3LTEzLTEtMS0w_83e8dede-c199-420a-9a23-62b5cf55f2f1"
      unitRef="usd">33727000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE3LTE1LTEtMS0w_65067b71-8a97-4ded-8b94-8523a82d5d69"
      unitRef="usd">124363000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE4LTExLTEtMS0w_efab8e5e-1411-4c98-bef4-e7707eac9626"
      unitRef="shares">34000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE4LTEzLTEtMS0w_c143b5d8-d936-4429-b6fc-2ed7a3fff201"
      unitRef="usd">12923000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE4LTE1LTEtMS0w_bf246af7-ea95-4f40-a7d2-8d4b9e9c4b98"
      unitRef="usd">12923000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ib7bb27ddbf7242a286b49a1ff342b735_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE5LTUtMS0xLTA_c66bc70e-1b53-4709-a928-2295a8073003"
      unitRef="usd">67365000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzE5LTE1LTEtMS0w_92aa2bbe-d867-449f-845a-1a56723a3b0e"
      unitRef="usd">67365000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ib7bb27ddbf7242a286b49a1ff342b735_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIwLTUtMS0xLTA_1b58e9d0-b7ca-4e25-86f2-26860ae953d5"
      unitRef="usd">7853000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIwLTExLTEtMS0w_6c06ad44-73ca-4320-ae3f-7f7cfd323d77"
      unitRef="shares">40000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIwLTEzLTEtMS0w_c16985ef-1423-43b8-8b77-dc3d413f3057"
      unitRef="usd">3059000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIwLTE1LTEtMS0w_46e17931-9e96-4771-98b7-3219b8f722f8"
      unitRef="usd">10912000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIxLTExLTEtMS0w_78221448-7da0-4c55-806e-7993802fd50e"
      unitRef="shares">59000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="ie280bac75797444ca0eb1c23a75eb74a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIxLTEzLTEtMS0w_d3a15b3e-00d6-48c9-b22d-753efc3ea3be"
      unitRef="usd">15484000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIxLTE1LTEtMS0w_ae58d97a-6df6-4bc4-8f08-c4521a03730b"
      unitRef="usd">15484000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:SharesIssued
      contextRef="i2d65f7316c4047c5923f4c34f57d2ed8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTEtMS0xLTA_73cb6001-42dc-4fa9-8967-c5c794cad3a8"
      unitRef="shares">48148000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i2d65f7316c4047c5923f4c34f57d2ed8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTMtMS0xLTA_5c5aeceb-a47a-40e8-b5fa-e2cfe195165a"
      unitRef="usd">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id83f6cb9c91c48bfaeb540df6008afe4_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTUtMS0xLTA_85a7090a-d64e-4132-9367-ff1f2db3aef6"
      unitRef="usd">905332000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8931e459110d4fb29c212d1c2b0f9f5f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTctMS0xLTA_0d93dc2a-526f-42fe-8e30-d93fa8a47ff5"
      unitRef="usd">-46000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie663b19deda44df6b80a183376dfde36_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTktMS0xLTA_9b328c3a-29fb-4ea8-8fa2-8eaf96a42406"
      unitRef="usd">1112156000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="ia825caf5f5e84ab497faa2b1f3c68363_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTExLTEtMS0w_bcbbfc32-b263-4cc6-8bff-0aa2a1a4cd79"
      unitRef="shares">7609000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="ia825caf5f5e84ab497faa2b1f3c68363_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTEzLTEtMS0w_6b59f301-ede2-48a9-b820-4f01fe58b572"
      unitRef="usd">-31812000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMTgvZnJhZzphNTAxNGE3NzQ2OTk0MzExODQwNjZkNWFhOGM2MGE4NS90YWJsZTozNWVjZGU4OWQ1MWU0NWJkYjQ2NTJmYWNiYjU5YzVmYy90YWJsZXJhbmdlOjM1ZWNkZTg5ZDUxZTQ1YmRiNDY1MmZhY2JiNTljNWZjXzIyLTE1LTEtMS0w_4ea85de8-4e9b-4d87-be19-7d90b1826934"
      unitRef="usd">1986111000</us-gaap:StockholdersEquity>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDk2_e9d966fc-7e2c-41a5-8e76-e9770128e782">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;DESCRIPTION OF BUSINESS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Impact of the COVID-19 Pandemic&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In March 2020, the World Health Organization declared the outbreak of a COVID-19 pandemic ("COVID-19"), which continues to spread throughout the U.S. and the world and has resulted in authorities implementing numerous measures to contain the virus, including travel bans and restrictions, quarantines, shelter-in-place orders, and business limitations and shutdowns. &lt;/span&gt;&lt;span style="color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;While we &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;are unable to accurately predict the full impact that COVID-19 will have on our results from operations, financial condition, liquidity and cash flows due to numerous uncertainties, including the duration and severity of the pandemic and containment measures and associated compliance, the current environment has negatively impacted our revenues for fiscal year 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Because an increasing portion of our revenues are considered recurring in nature, the effect of COVID-19 on our results of operations may also not be fully reflected for some time. We continue to see some impact on our business in the near term with delays in government procurement processes and uncertainty around public sector budgets, as well as delays in implementations caused by travel restrictions, closed offices, or clients shifting focus to more pressing issues. We have addressed those challenges through adapting the way we do business &#x2013; encouraging web and video conferencing, conducting virtual sales demonstrations and delivering professional services remotely.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our priorities during this crisis are protecting the health and safety of our employees and our clients. Our IT systems and applications support a remote workforce. Prior to the pandemic, many of our employees worked remotely.  In response to the pandemic, we encouraged all employees who are able to do so to work from home, equipping them with resources necessary to continue uninterrupted. We were able to transition the vast majority of our employees to this work-from-home posture. This reduces the number of team members in our offices to those uniquely needed for essential on-site services, such as network operations support staff, and allows for &#x201c;social distancing&#x201d; as directed by the Centers for Disease Control ("CDC").&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The pandemic has delayed some government procurement processes and is expected to impact our ability to complete certain implementations, negatively impacting our revenue. It could also negatively impact the timing of client payments to us. We continue to monitor these trends in order to respond to the ever-changing impact of COVID-19 on our clients and Tyler&#x2019;s operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the twelve months ended December&#160;31, 2020, the impact of the COVID-19 pandemic resulted in lower revenues from software licenses, software services, appraisal services, and other revenues. Lower software licenses compared to prior periods are attributed to slower sales cycles as government procurement processes are delayed and contract signings have been pushed to future periods. Software services and appraisal services revenue declines are attributed to delays in implementations caused by travel restrictions and shelter-in-place orders in effect during the period. Other revenues were lower compared to prior periods primarily as a result of the cancellation of our 2020 Connect user conference. Lower revenues compared to prior periods were offset by cost savings attributed to lower spend on travel, user conferences and trade show expenses, health claims and other employee-related expenses. If, and as travel restrictions are relaxed, we expect software services and appraisal services revenues to increase as the limited number of our clients who require that all or a portion of their services be delivered onsite will be able to receive those services. Also, we are adapting by changing the way we do business, encouraging web and video conferencing, conducting virtual sales demonstrations and delivering professional services remotely, which result in increases in staff utilization rates and billable time.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues from subscriptions and maintenance, which we consider recurring in nature, comprised 73% of our total consolidated revenue for the twelve months ended December&#160;31, 2020, and include transaction-based revenue streams such as e-filing and online payments. As of December&#160;31, 2020, we had $758.5 million in cash and investments and no outstanding borrowings under our credit facility. We also have substantial additional liquidity available through our undrawn $400 million credit facility, which can be expanded through an accordion feature.  During the second quarter of 2020, we completed our annual assessment of goodwill which did not result in an impairment charge. Since our assessment in the second quarter of 2020, we identified no indicators of impairment to goodwill; therefore, we have recorded no impairment as of and for the period ended December&#160;31, 2020. We identified no indicators of impairment to long-lived and other assets and therefore, no impairment was recorded as of and for the period ended December&#160;31, 2020. However, due to significant uncertainty surrounding COVID-19 and market conditions, there are no assurances conditions will not deteriorate in the future.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;PRINCIPLES OF CONSOLIDATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The consolidated financial statements include our parent company and eleven 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 and other comprehensive income. We had no items of other comprehensive income during the years ended December 31, 2020, 2019, and 2018.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;CASH AND CASH EQUIVALENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;REVENUE RECOGNITION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Nature of Products and Services&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Identification of the contract, or contracts, with a customer&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Identification of the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Determination of the transaction price&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Allocation of the transaction price to the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Recognition of revenue when, or as, we satisfy a performance obligation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Software Arrangements:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Software Licenses and Royalties&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 adjusted if needed, 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Software Services&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Post-Contract Customer Support&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Computer Hardware Equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Subscription-Based Services:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NTQ_08918ce7-ad26-42b7-86b9-69235399badb"&gt;three&lt;/span&gt; to five years or longer in length and billed annually in advance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 services ratably over the term of the arrangement, which range from &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMjg_6534193c-8989-4ffa-9739-99f420f614b6"&gt;one&lt;/span&gt; to ten years, but are typically for a period of &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzI_08918ce7-ad26-42b7-86b9-69235399badb"&gt;three&lt;/span&gt; to five years. 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other transaction-based fees primarily 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For e-filing transaction fees and certain 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Appraisal Services:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEyMDA2_9f4088ec-ac39-4e93-acc6-7f71ad2066bc"&gt;one&lt;/span&gt; to three-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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Significant Judgments:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Contract Balances:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Accounts receivable and allowance for losses and sales adjustments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 5% and 20% 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, and December&#160;31, 2019, total current and long-term accounts receivable, net of allowance for losses and sales adjustments, was $403.7 million and $396.5 million, respectively. We have recorded unbilled receivables of $140.8 million and $134.0 million at December&#160;31, 2020, and December&#160;31, 2019, respectively. Included in unbilled receivables are retention receivables of $13.1 million at December&#160;31, 2020, and December&#160;31, 2019, 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within 30 to 90 days. 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We maintain allowances for losses and sales adjustments, which losses are recorded against revenue at the time the loss is incurred. Since most of our clients are domestic governmental entities, we rarely incur a credit loss resulting from the inability of a client to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for losses and sales  adjustments may require revision, include, but are not limited to, managing our client&#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. Our allowance for losses and sales adjustments of $9.3 million and $5.7 million at December&#160;31, 2020, and December&#160;31, 2019, respectively, does not include provisions for credit losses. As of January 1, 2020, we adopted ASU 2016-13 and primarily evaluated our historical experience with credit losses related to trade and other receivables. Because we have not experienced any historical credit losses with the majority of our clients, we have no basis to record a reserve for credit losses as defined by the standard.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the changes in the allowance for losses and sales adjustments:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.243%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.630%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.630%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.631%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provisions for losses and sales adjustments - accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(569)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Collections of accounts previously written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(545)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(211)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:15pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Deferred Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Deferred Commissions &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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&#160;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDg1_ec9a6f16-bae1-475d-873b-a2db6cd27396"&gt;three&lt;/span&gt; to seven years. 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 one year. 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;USE OF ESTIMATES&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 allowance for losses and sales adjustments; 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;PROPERTY AND EQUIPMENT, NET&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;RESEARCH AND DEVELOPMENT COSTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We expensed research and development expense of $88.4 million in 2020, $81.3 million in 2019, and $63.3 million in 2018.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;INCOME TAXES&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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".&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;SHARE-BASED COMPENSATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzM5_742741b4-d349-4bdd-bcc2-2875ba4c7867"&gt;three&lt;/span&gt; to six years of continuous service from the date of grant and have a contractual term of 10 years. Restricted stock unit grants generally vest ratably over&#160;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDkx_687d0a58-f81d-42cd-a498-8c22c9cbf84c"&gt;three&lt;/span&gt; to five years 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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Stock Compensation&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;. See Note 9 &#x2013; &#x201c;Share-Based Compensation&#x201d; for further information. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;GOODWILL AND OTHER INTANGIBLE ASSETS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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, an impairment charge is recorded against goodwill for the amount of that excess. The impairment is limited to the amount of goodwill in that reporting unit. 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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As part of our annual impairment test, our qualitative assessments included our estimated effects of COVID-19 for all reporting units except for the data and insights reporting unit. As a result of these qualitative assessments, we determined that it was not more likely than not that an impairment existed; therefore, we did not perform a Step 1 quantitative impairment test. We did perform a quantitative assessment for goodwill of $75.7 million associated with our data and insights business unit and concluded no impairment existed as of our annual assessment date. For most of our reporting units, goodwill relates to a combination of legacy and acquired businesses and as a result those units have fair values that substantially exceed their underlying carrying values. For other reporting units, in particular our platform technologies and data and insights units, goodwill entirely relates to recently acquired businesses, and as a result those units do not have significant excess fair values over carrying values. The platform technologies and data and insights business units combined goodwill was $152.0 million, or 18%, of total goodwill as of December&#160;31, 2020. Our annual goodwill impairment analysis did not result in an impairment charge. During 2020, we have recorded no impairment to goodwill as no triggering events or changes in circumstances indicating a potential impairment have occurred as of period-end. However, due to significant uncertainty surrounding COVID-19 and market conditions, there are no assurances conditions will not deteriorate in the future.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Determining the fair value of our reporting units involves the use of significant estimates and assumptions and considerable management judgment. We base our fair value estimates on assumptions we believe to be reasonable at the time, but such assumptions are subject to inherent uncertainty. Changes in market conditions or other factors outside of our control, such as a worsening of expected impact of COVID-19, could cause us to change key assumptions and our judgment about a reporting unit&#x2019;s prospects. Similarly, in a specific period, a reporting unit could significantly underperform relative to its historical or projected future operating results. Either situation could result in a meaningfully different estimate of the fair value of our reporting units, and a consequent future impairment charge. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There have been no impairments to goodwill 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Other Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 no impairments of intangible assets in any of the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;IMPAIRMENT OF LONG-LIVED ASSETS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 disposal group classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There was no impairment of long-lived assets in any of the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;COSTS OF COMPUTER SOFTWARE&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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. During the twelve months period ended December&#160;31, 2020 and 2019, respectively, we capitalized approximately $5.8 million and $4.8 million 2019 of software development costs. 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, five years. Amortization of software development costs was approximately $1.2 million in 2020 and $0.3 million in 2019, 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&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;CONTINGENT PURCHASE CONSIDERATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;FAIR VALUE OF FINANCIAL INSTRUMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, we have $154.8 million in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from 2021 through 2028.&#160;We intend to hold these bonds to maturity and have classified them as such. We believe cost approximates fair value because of the relatively short duration of these investments. 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 other observable market data. These investments are presented at amortized cost and are included in short-term investments and non-current investments in the accompanying condensed consolidated balance sheets.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, we have an accrued interest receivable balance of  approximately $896,000 which is included in accounts receivable, net. We do not measure an allowance for credit losses for accrued interest receivables. We record any losses within the maturity period of the investment and any write-offs to accrued interest receivables are recorded as a reduction to interest income in the period of the loss. During the twelve months ended December&#160;31, 2020, we have recorded no credit losses. Interest income and amortization of discounts and premiums are included in other income, net in the accompanying consolidated statements of income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During 2020, we sold our $15.0 million investment in convertible preferred stock representing a 20% interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings to BFTR, LLC, a wholly owned subsidiary of Bison Capital Partners V L.P. During the same period, we purchased $10.0 million in common stock representing a 18% interest in BFTR, LLC. The investment in common 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. Periodically, our cost method investments are assessed 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. No events or changes in circumstances have occurred during the period that require reassessment.  There has been no 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;CONCENTRATIONS OF CREDIT RISK &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 December&#160;31, 2020, we had cash and cash equivalents of $603.6 million. We perform periodic evaluations of the credit standing of these financial institutions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;We maintain allowances for losses and sales adjustments, 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 losses and sales adjustments 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="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;LEASES&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;INDEMNIFICATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;RECLASSIFICATIONS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain amounts for previous years have been reclassified to conform to the current year presentation. As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;amp;T segments have been adjusted to reflect the segment change. See Note 14 - "Segment and Related Information" for additional information. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In June 2016, the FASB issued ASU 2016-13, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Financial Instruments - Credit Losses,&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; (&#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, available for-sale debt securities, 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 an 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 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.  As of January 1, 2020, we adopted the new standard with no material impact of credit losses to our trade and other receivables, held-to-maturity debt securities and retained earnings included in our condensed consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"&gt;O&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;n January 26, 2017, the FASB issued ASU No. 2017-04, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Simplifying the Test for Goodwill Impairment&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;. The new standard eliminates Step 2 from the goodwill impairment test. An entity should recognize a goodwill impairment charge for the amount by which the carrying amount exceeds the reporting unit's fair value. This standard is effective for public business entities in fiscal years beginning after December 15, 2019, and the standard was adopted and applied prospectively by the Company as of January 1, 2020, but it did not have a significant impact on the Company's financial statements and disclosures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;NEW ACCOUNTING PRONOUNCEMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2019, the FASB issued ASU 2019-12,&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt; Simplifying the Accounting for Income Taxes&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, ("ASU 2019-12") which simplifies the accounting for income taxes, eliminates certain exceptions within ASC 740, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Income Taxes&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, and clarifies certain aspects of the current guidance to promote consistency among reporting entities. The new standard is effective for fiscal years beginning after December 15, 2020. Most amendments within the standard are required to be applied on a prospective basis, while certain amendments must be applied on a retrospective or modified retrospective basis. We do not expect adoption of this standard to have a material effect on our consolidated financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <tyl:RecurringRevenuePercentageOfTotalRevenue
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjEzNDY_104c0935-0b1d-4820-8e2a-2481c21177a9"
      unitRef="number">0.73</tyl:RecurringRevenuePercentageOfTotalRevenue>
    <us-gaap:CashCashEquivalentsAndShortTermInvestments
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjEzNTc_37ba6299-5a57-465f-8330-da67865e2d64"
      unitRef="usd">758500000</us-gaap:CashCashEquivalentsAndShortTermInvestments>
    <us-gaap:LongTermLineOfCredit
      contextRef="i64fffae190564776a26bd84c84225be2_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjE0ODk_1593b2ea-e430-4bc6-ba1f-00020b3b538b"
      unitRef="usd">0</us-gaap:LongTermLineOfCredit>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i64fffae190564776a26bd84c84225be2_I20201231"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjEzNjI_250e4a32-04a4-4ea7-bd68-9e04cb1ab841"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDY5_b9add4e7-409d-4a5f-9ae5-be776f3f598a">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;PRINCIPLES OF CONSOLIDATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The consolidated financial statements include our parent company and eleven 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 and other comprehensive income. We had no items of other comprehensive income during the years ended December 31, 2020, 2019, and 2018.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <tyl:NumberOfWhollyOwnedSubsidiaries
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEwMjg_d9c00d17-7d66-426e-8f2b-dfc15e3396d2"
      unitRef="subsidiary">11</tyl:NumberOfWhollyOwnedSubsidiaries>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDgz_ae3c6e7c-7dfc-4fea-b611-77b1fe67d280">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;CASH AND CASH EQUIVALENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxNDM1Njc_579d5e95-8cbe-4677-8e9c-d4c162f8c848">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;REVENUE RECOGNITION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Nature of Products and Services&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Identification of the contract, or contracts, with a customer&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Identification of the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Determination of the transaction price&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Allocation of the transaction price to the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Recognition of revenue when, or as, we satisfy a performance obligation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Software Arrangements:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Software Licenses and Royalties&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 adjusted if needed, 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Software Services&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Post-Contract Customer Support&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Computer Hardware Equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Subscription-Based Services:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NTQ_08918ce7-ad26-42b7-86b9-69235399badb"&gt;three&lt;/span&gt; to five years or longer in length and billed annually in advance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 services ratably over the term of the arrangement, which range from &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMjg_6534193c-8989-4ffa-9739-99f420f614b6"&gt;one&lt;/span&gt; to ten years, but are typically for a period of &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzI_08918ce7-ad26-42b7-86b9-69235399badb"&gt;three&lt;/span&gt; to five years. 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other transaction-based fees primarily 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For e-filing transaction fees and certain 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Appraisal Services:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEyMDA2_9f4088ec-ac39-4e93-acc6-7f71ad2066bc"&gt;one&lt;/span&gt; to three-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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Significant Judgments:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Contract Balances:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Accounts receivable and allowance for losses and sales adjustments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 5% and 20% 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, and December&#160;31, 2019, total current and long-term accounts receivable, net of allowance for losses and sales adjustments, was $403.7 million and $396.5 million, respectively. We have recorded unbilled receivables of $140.8 million and $134.0 million at December&#160;31, 2020, and December&#160;31, 2019, respectively. Included in unbilled receivables are retention receivables of $13.1 million at December&#160;31, 2020, and December&#160;31, 2019, 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within 30 to 90 days. 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We maintain allowances for losses and sales adjustments, which losses are recorded against revenue at the time the loss is incurred. Since most of our clients are domestic governmental entities, we rarely incur a credit loss resulting from the inability of a client to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for losses and sales  adjustments may require revision, include, but are not limited to, managing our client&#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. Our allowance for losses and sales adjustments of $9.3 million and $5.7 million at December&#160;31, 2020, and December&#160;31, 2019, respectively, does not include provisions for credit losses. As of January 1, 2020, we adopted ASU 2016-13 and primarily evaluated our historical experience with credit losses related to trade and other receivables. Because we have not experienced any historical credit losses with the majority of our clients, we have no basis to record a reserve for credit losses as defined by the standard.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the changes in the allowance for losses and sales adjustments:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.243%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.630%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.630%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.631%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provisions for losses and sales adjustments - accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(569)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Collections of accounts previously written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(545)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(211)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:15pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Deferred Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Deferred Commissions &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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&#160;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDg1_ec9a6f16-bae1-475d-873b-a2db6cd27396"&gt;three&lt;/span&gt; to seven years. 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 one year. 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="i63e0a25031e7488d8d1318bfc863ae0e_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NjA_1bc7ca07-97a4-4e0b-97d8-141d2f315cdd">P5Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="i63e0a25031e7488d8d1318bfc863ae0e_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMzQ_7b3f7b5c-1594-42c1-b85a-3e9a3695ccf3">P10Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="i63e0a25031e7488d8d1318bfc863ae0e_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzg_1bc7ca07-97a4-4e0b-97d8-141d2f315cdd">P5Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="i45505cddc67248faaba02d34cb7979d2_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxMTM1NDM_ad099101-322d-45c7-9546-0cd5dcc35de1">P3Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling
      contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzE5Nzky_d4f5cc50-e75e-4791-9c56-2fc26cd454a1"
      unitRef="number">0.05</tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling>
    <tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling
      contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzE5Nzk5_5c041aae-f35f-4e96-835f-cac39db8c86f"
      unitRef="number">0.20</tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling>
    <us-gaap:AccountsReceivableNet
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMTY4_147a32a0-d43b-4abe-b7ae-3337bb545c4e"
      unitRef="usd">403700000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMTc1_af31420b-cde8-4aad-ad92-a687b6c51f62"
      unitRef="usd">396500000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="id3a0729ea86c4aae9ec5d014190a5e10_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMjM0_0bbfab67-da9b-4389-bcc7-864988746930"
      unitRef="usd">140800000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="i5d0e27ba06b44330b51f456deab73ad4_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMjQx_e7ff381f-ad06-495e-8210-62c4da31e73a"
      unitRef="usd">134000000.0</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="ia9d3c7e5c2de4087baba0361c032ede0_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMzM1_b5ef5979-0138-47ad-ae62-e4950e428291"
      unitRef="usd">13100000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="id4c1cb9adf4046ef95f5f38893efd8ce_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwMzM1_d7d36d49-de55-45b6-b2ed-553ab25086ea"
      unitRef="usd">13100000</us-gaap:AccountsReceivableNet>
    <tyl:RevenueFromContractWithCustomerPaymentTerm
      contextRef="ife077d9575b74e78be8106979a431594_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwOTcw_83f81c17-4750-4278-bc86-944018abad19">P30D</tyl:RevenueFromContractWithCustomerPaymentTerm>
    <tyl:RevenueFromContractWithCustomerPaymentTerm
      contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIwOTc2_de71ed5d-0b83-433d-b9e3-cf492aa577af">P90D</tyl:RevenueFromContractWithCustomerPaymentTerm>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxNzM0NjM_079921e9-49e8-4e67-a044-8515db579459"
      unitRef="usd">9300000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxNzM0NzE_5ded9497-e6d7-41cd-8d6f-564e0d9600e3"
      unitRef="usd">5700000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQ5NDc4MDI0Mjk2Nzc_3b11d5ac-eb8e-4e9a-8d68-cd8fbdf8951a">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the changes in the allowance for losses and sales adjustments:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.243%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.630%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.630%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.631%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provisions for losses and sales adjustments - accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(569)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Collections of accounts previously written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(545)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(211)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzItMS0xLTEtNDU3OQ_35b3eded-9cf1-418f-b743-9790d56c53cf"
      unitRef="usd">5738000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzItMy0xLTEtNDU3OQ_49fa456f-4298-43e4-9ff9-44f297fcd06d"
      unitRef="usd">4647000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzItNS0xLTEtNDU3OQ_8be543b5-c014-4210-b019-9ef72a27f872"
      unitRef="usd">5427000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzMtMS0xLTEtNDU3OQ_f321c3e2-e507-4ad0-90b8-a3a5c7216dcf"
      unitRef="usd">3517000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzMtMy0xLTEtNDU3OQ_87ec64b6-f976-485d-8635-777ea95371ef"
      unitRef="usd">1636000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzMtNS0xLTEtNDU3OQ_db2d2715-682b-4569-8dee-59f73ae74b22"
      unitRef="usd">-569000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzQtMS0xLTEtNDU3OQ_d6eef095-48d6-4ba4-92c7-f5b530e852a5"
      unitRef="usd">0</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzQtMy0xLTEtNDU3OQ_03dd0289-c110-40ab-94c6-5f38b0db3ce6"
      unitRef="usd">545000</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzQtNS0xLTEtNDU3OQ_b0457928-56d4-42ab-8a02-fe47dfa31d18"
      unitRef="usd">211000</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzUtMS0xLTEtNDkyMg_350b4b78-541f-4a06-826c-d60ec5c334cb"
      unitRef="usd">9255000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzUtMy0xLTEtNDkyMg_985f46b3-cfd6-4277-8971-9e9729eb5c6e"
      unitRef="usd">5738000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90YWJsZTpmYzI4MGY3MDUyZjM0ZDZmYjNiNzg5ODkxOTQzZTM2My90YWJsZXJhbmdlOmZjMjgwZjcwNTJmMzRkNmZiM2I3ODk4OTE5NDNlMzYzXzUtNS0xLTEtNDkyMg_3d8f682f-15b3-4cd0-a718-5b23d15d101e"
      unitRef="usd">4647000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <tyl:SalesCommissionsAmortizationPeriod
      contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDkx_74af74d0-0032-442b-8809-7a3dd15e4c7b">P7Y</tyl:SalesCommissionsAmortizationPeriod>
    <tyl:SalesCommissionRenewalPeriod
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIzMjk5_38013de2-576b-47cf-929f-229fc8de1e25">P1Y</tyl:SalesCommissionRenewalPeriod>
    <us-gaap:UseOfEstimates
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDc4_1492ddf9-a5ef-4bc4-8f54-2aa778533396">USE OF ESTIMATESThe 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 allowance for losses and sales adjustments; 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.</us-gaap:UseOfEstimates>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTA0_955718b1-52c7-4e77-a68a-51eee4a3f5bf">PROPERTY AND EQUIPMENT, NETProperty, 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:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI1NjEy_a4706452-1577-4fae-b1b1-43432c9bf3a3"
      unitRef="usd">88400000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI1NjIy_91d4b5ea-d4c4-4967-ab1f-1ff39dac0f7e"
      unitRef="usd">81300000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI1NjM2_ae5c118b-667f-4fed-a800-30430e18db02"
      unitRef="usd">63300000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTEy_2a1335db-0462-4147-b196-cfa3c341cc03">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;INCOME TAXES&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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".&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDY1_e3c6817d-d417-4255-96eb-a0be5d82e6d9">SHARE-BASED COMPENSATIONWe 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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzM5_742741b4-d349-4bdd-bcc2-2875ba4c7867"&gt;three&lt;/span&gt; to six years of continuous service from the date of grant and have a contractual term of 10 years. Restricted stock unit grants generally vest ratably over&#160;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDkx_687d0a58-f81d-42cd-a498-8c22c9cbf84c"&gt;three&lt;/span&gt; to five years 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.</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i94daf233c3194985b62bde30928670a1_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzQ1_105ca2d8-89c5-4a04-8840-901af330d3a9">P6Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDI0_93846133-17f7-4f75-8481-b4751b2a39fc">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i5583ee35a5ab41ebaa53632a5c580575_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDk3_ee2f8db4-ac02-447b-88d0-aa735fe25301">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <tyl:ShareBasedCompensationShareConversionRateShares
      contextRef="ibf0996191f544a47aa3252f3c6b8abfa_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDg3NzkxNDM1NjI_45f99126-6a3b-4181-b7ec-d593dd4b151e"
      unitRef="shares">1</tyl:ShareBasedCompensationShareConversionRateShares>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTEz_9d14357c-89f3-42b4-b8b0-48aaab1e7668">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;GOODWILL AND OTHER INTANGIBLE ASSETS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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, an impairment charge is recorded against goodwill for the amount of that excess. The impairment is limited to the amount of goodwill in that reporting unit. 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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As part of our annual impairment test, our qualitative assessments included our estimated effects of COVID-19 for all reporting units except for the data and insights reporting unit. As a result of these qualitative assessments, we determined that it was not more likely than not that an impairment existed; therefore, we did not perform a Step 1 quantitative impairment test. We did perform a quantitative assessment for goodwill of $75.7 million associated with our data and insights business unit and concluded no impairment existed as of our annual assessment date. For most of our reporting units, goodwill relates to a combination of legacy and acquired businesses and as a result those units have fair values that substantially exceed their underlying carrying values. For other reporting units, in particular our platform technologies and data and insights units, goodwill entirely relates to recently acquired businesses, and as a result those units do not have significant excess fair values over carrying values. The platform technologies and data and insights business units combined goodwill was $152.0 million, or 18%, of total goodwill as of December&#160;31, 2020. Our annual goodwill impairment analysis did not result in an impairment charge. During 2020, we have recorded no impairment to goodwill as no triggering events or changes in circumstances indicating a potential impairment have occurred as of period-end. However, due to significant uncertainty surrounding COVID-19 and market conditions, there are no assurances conditions will not deteriorate in the future.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Determining the fair value of our reporting units involves the use of significant estimates and assumptions and considerable management judgment. We base our fair value estimates on assumptions we believe to be reasonable at the time, but such assumptions are subject to inherent uncertainty. Changes in market conditions or other factors outside of our control, such as a worsening of expected impact of COVID-19, could cause us to change key assumptions and our judgment about a reporting unit&#x2019;s prospects. Similarly, in a specific period, a reporting unit could significantly underperform relative to its historical or projected future operating results. Either situation could result in a meaningfully different estimate of the fair value of our reporting units, and a consequent future impairment charge. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There have been no impairments to goodwill 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&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>
    <tyl:GoodwillAssessedForImpairment
      contextRef="i77474ef608ba4afa8feabe57cb359905_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzNDgyOTY_0703b1df-2784-4be7-8818-3fed9efcec2c"
      unitRef="usd">75700000</tyl:GoodwillAssessedForImpairment>
    <tyl:GoodwillAssessedForImpairment
      contextRef="i2345196ee5364b50af4122faa02b1455_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzNDkwMTI_fbb147e3-93d4-4bbf-b3b0-a9c3d22aa6f1"
      unitRef="usd">152000000.0</tyl:GoodwillAssessedForImpairment>
    <tyl:PercentageOfTotalGoodwill
      contextRef="i2345196ee5364b50af4122faa02b1455_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzNDkwMjA_f46dd958-ff26-4eb3-9b09-44c16d5194f0"
      unitRef="number">0.18</tyl:PercentageOfTotalGoodwill>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzNTAyOTM_2e923115-7622-416b-bb0a-90fda844a1ac"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMwMTk3_4eca6103-6a67-433c-916b-42f2466e9437"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMwMTk3_75404afd-53b3-4564-8c33-89a32a6c57d7"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMwMTk3_d7139497-d334-4575-89d1-dcd41f768de9"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMxMjYw_4eca6103-6a67-433c-916b-42f2466e9437"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMxMjYw_75404afd-53b3-4564-8c33-89a32a6c57d7"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMxMjYw_d7139497-d334-4575-89d1-dcd41f768de9"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDg4_5ac0f711-55b4-4d55-8f2b-0c2ffd49e22f">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;IMPAIRMENT OF LONG-LIVED ASSETS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 disposal group classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There was no impairment of long-lived assets in any of the periods presented.&lt;/span&gt;&lt;/div&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMyNDQy_06eeed8c-1375-427d-b89b-b9e9942e71db"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMyNDQy_1c366ccc-96ae-4573-be5e-6f1402a6735d"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMyNDQy_3b95086f-2613-41aa-87ae-02c1342eeb84"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTE0_833787e8-84ec-4dcd-8c89-e3e1837b22f6">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;COSTS OF COMPUTER SOFTWARE&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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. During the twelve months period ended December&#160;31, 2020 and 2019, respectively, we capitalized approximately $5.8 million and $4.8 million 2019 of software development costs. 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, five years. Amortization of software development costs was approximately $1.2 million in 2020 and $0.3 million in 2019, 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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMyODUw_361f90dd-e4e8-44a7-bfe5-8cfc93f83f3d"
      unitRef="usd">5800000</tyl:CapitalizedPostAcquisitionSoftwareDevelopmentCosts>
    <tyl:CapitalizedPostAcquisitionSoftwareDevelopmentCosts
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEwOTk1MTE3MDE5MTk_16ba217a-85f9-4f4a-8b9a-adf266b5cac4"
      unitRef="usd">4800000</tyl:CapitalizedPostAcquisitionSoftwareDevelopmentCosts>
    <tyl:RemainingEstimatedEconomicLife
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMzMTY4_51599b78-5898-40ab-a393-da037d92f671">P5Y</tyl:RemainingEstimatedEconomicLife>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzMzMjM5_b05f054e-5e16-45d6-8e29-017aa2c1e952"
      unitRef="usd">1200000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEwOTk1MTE3MDIwMTQ_d4bef1f6-0008-456f-a352-8c3d5b5dc901"
      unitRef="usd">300000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDU3_2653274d-95f7-418a-a8d9-909b1069ba04">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;CONTINGENT PURCHASE CONSIDERATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDg2_c88e29a7-a596-4a64-bd87-227d2bf8f99a">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;FAIR VALUE OF FINANCIAL INSTRUMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, we have $154.8 million in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from 2021 through 2028.&#160;We intend to hold these bonds to maturity and have classified them as such. We believe cost approximates fair value because of the relatively short duration of these investments. 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 other observable market data. These investments are presented at amortized cost and are included in short-term investments and non-current investments in the accompanying condensed consolidated balance sheets.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, we have an accrued interest receivable balance of  approximately $896,000 which is included in accounts receivable, net. We do not measure an allowance for credit losses for accrued interest receivables. We record any losses within the maturity period of the investment and any write-offs to accrued interest receivables are recorded as a reduction to interest income in the period of the loss. During the twelve months ended December&#160;31, 2020, we have recorded no credit losses. Interest income and amortization of discounts and premiums are included in other income, net in the accompanying consolidated statements of income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During 2020, we sold our $15.0 million investment in convertible preferred stock representing a 20% interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings to BFTR, LLC, a wholly owned subsidiary of Bison Capital Partners V L.P. During the same period, we purchased $10.0 million in common stock representing a 18% interest in BFTR, LLC. The investment in common 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. Periodically, our cost method investments are assessed 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. No events or changes in circumstances have occurred during the period that require reassessment.  There has been no 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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM0MzA2_49b2d9f1-e8cf-47b6-ba59-968f1b3008c2"
      unitRef="usd">154800000</us-gaap:PaymentsToAcquireHeldToMaturitySecurities>
    <us-gaap:InterestReceivable
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjcxNDE_b605a28b-08ef-4f9f-a88d-b429e5681244"
      unitRef="usd">896000</us-gaap:InterestReceivable>
    <us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue
      contextRef="i78dfe745fd3144b0822619031b7bdbde_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM0ODQy_8ef5a4dc-d442-4c19-8bc1-025076c5d95e"
      unitRef="usd">15000000.0</us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue>
    <tyl:CostMethodInvestmentOwnershipPercentage
      contextRef="i78dfe745fd3144b0822619031b7bdbde_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM0OTAw_fe95991d-12c4-4e5d-8418-5fbe099718a9"
      unitRef="number">0.20</tyl:CostMethodInvestmentOwnershipPercentage>
    <us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue
      contextRef="i39b2eaa37ed24792a9ca54053db123b6_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjcyNDQ_700d23d5-3c2d-48ab-818a-4d4299343540"
      unitRef="usd">10000000.0</us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue>
    <tyl:CostMethodInvestmentOwnershipPercentage
      contextRef="i39b2eaa37ed24792a9ca54053db123b6_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIxOTkwMjMzMjcyODA_ea8fb049-3b69-4b17-b69b-cde447bc8d62"
      unitRef="number">0.18</tyl:CostMethodInvestmentOwnershipPercentage>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM1NjQw_009cce45-faf2-43ff-a508-7e4e17a91a32"
      unitRef="usd">0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM1NjQw_17163425-c5f5-4446-b573-aee4f694a400"
      unitRef="usd">0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM1NjQw_9514748a-c28b-4f35-a705-133a4cb4b5ab"
      unitRef="usd">0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTAw_6361120c-ee10-4959-8cd9-26f3e3ca4d33">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;CONCENTRATIONS OF CREDIT RISK &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 December&#160;31, 2020, we had cash and cash equivalents of $603.6 million. We perform periodic evaluations of the credit standing of these financial institutions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;We maintain allowances for losses and sales adjustments, 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 losses and sales adjustments 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="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzM2MzU3_1d10129a-1e9a-408e-97df-ada124917d23"
      unitRef="usd">603600000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTA4_39960dc4-46c6-4858-916c-d6e6dd595214">&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;LEASES&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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;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.</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:GuaranteesIndemnificationsAndWarrantiesPolicies
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTI4_d7fe806f-c21d-4f1b-92c4-86032769c611">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;INDEMNIFICATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNTE4_83a4abd9-010c-40ba-b6aa-816e0e9358a9">RECLASSIFICATIONSCertain amounts for previous years have been reclassified to conform to the current year presentation. As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;amp;T segments have been adjusted to reflect the segment change. See Note 14 - "Segment and Related Information" for additional information.</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzQyNDY3_3f5b5e6e-1031-45f5-88fb-0ccb3bfa52ea">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In June 2016, the FASB issued ASU 2016-13, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Financial Instruments - Credit Losses,&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; (&#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, available for-sale debt securities, 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 an 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 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.  As of January 1, 2020, we adopted the new standard with no material impact of credit losses to our trade and other receivables, held-to-maturity debt securities and retained earnings included in our condensed consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"&gt;O&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;n January 26, 2017, the FASB issued ASU No. 2017-04, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Simplifying the Test for Goodwill Impairment&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;. The new standard eliminates Step 2 from the goodwill impairment test. An entity should recognize a goodwill impairment charge for the amount by which the carrying amount exceeds the reporting unit's fair value. This standard is effective for public business entities in fiscal years beginning after December 15, 2019, and the standard was adopted and applied prospectively by the Company as of January 1, 2020, but it did not have a significant impact on the Company's financial statements and disclosures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;NEW ACCOUNTING PRONOUNCEMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2019, the FASB issued ASU 2019-12,&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt; Simplifying the Accounting for Income Taxes&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, ("ASU 2019-12") which simplifies the accounting for income taxes, eliminates certain exceptions within ASC 740, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Income Taxes&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, and clarifies certain aspects of the current guidance to promote consistency among reporting entities. The new standard is effective for fiscal years beginning after December 15, 2020. Most amendments within the standard are required to be applied on a prospective basis, while certain amendments must be applied on a retrospective or modified retrospective basis. We do not expect adoption of this standard to have a material effect on our consolidated financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4Xzc2ODg_e5eab34b-7e5a-40e6-bd40-556ec6b6fefb">ACQUISITIONS&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 $20.4 million paid in cash. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2020, our final valuation of the fair market value of CHT's assets and liabilities resulted in the adjustment to the preliminary opening balance sheet. These adjustments related to an increased allocation to customer related intangibles and reduction to goodwill of approximately $1.7 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 28, 2019, we acquired all of the capital stock of MP Holdings Parent, Inc. dba MicroPact ("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 $2.0 million, was approximately $201.8 million consisting of $198.2 million&#160;paid in cash. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2020, we paid $5.6 million in contingent consideration. We have no contingent consideration accrued as of December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 $3.7 million in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, the purchase price allocations for CHT, MicroPact and MyCivic are complete. Our balance sheet as of December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The operating results of all 2019 acquisitions are included with the operating results of the Enterprise Software segment since their date of acquisition. In 2019, we incurred fees of approximately $1.1 million 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;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="ied6f64ee5036457f909b03c8c47daa40_D20191030-20191030"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzM3Mg_d7ee8061-cd6f-4445-8e8d-e3390aacde2a"
      unitRef="usd">20400000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles
      contextRef="ib380b3b73a1a40f99d813fb62fa45604_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzIxOTkwMjMyNzE5NjY_b5bd5395-c443-4697-a939-076bb8860cfb"
      unitRef="usd">1700000</us-gaap:BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="ib380b3b73a1a40f99d813fb62fa45604_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzIxOTkwMjMyNzE5NjY_dfa469b5-75cc-441b-aecb-e3f13bc9de91"
      unitRef="usd">-1700000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="ic847e519530c45bf9016c8ff781dcb50_I20190228"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4Xzg4Mw_5d0f7ae6-e73a-4395-99b0-94c680237c4a"
      unitRef="usd">2000000.0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i305eac48da0b40218f74de76b1314f83_D20190228-20190228"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzkwNQ_ce78f213-ed37-4a8c-9f10-3f146864d11c"
      unitRef="usd">201800000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i305eac48da0b40218f74de76b1314f83_D20190228-20190228"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzkyMg_0e07a81f-f6a5-4920-b9af-d50494485d14"
      unitRef="usd">198200000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="ic8168101f57449e9a85433dc8290fd6f_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzM4NDgyOTA3MTA4Nzk_276061e9-a7d9-4881-9998-dff7433ac602"
      unitRef="usd">5600000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzQ5NDc4MDIzNDA1MDQ_388b9328-11e3-483a-92f3-b9252f9f78b3"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="ife54261a0f3d4ca3a8b579d2c9682d64_D20190201-20190201"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzM0Nzg_f1579193-d736-4bec-85af-b781515a7b6e"
      unitRef="usd">3700000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i9bdc423139fe439faff35cca3d53f67c_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjcvZnJhZzo1NWRkNmY2MjE2MjE0NDIwOWQ5OTBiYWUwOGI1OWE2OC90ZXh0cmVnaW9uOjU1ZGQ2ZjYyMTYyMTQ0MjA5ZDk5MGJhZTA4YjU5YTY4XzQzODM_57b99c9c-f3bf-48f6-b66c-6ae098789946"
      unitRef="usd">1100000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzQ4NA_3251aae8-39ee-4a32-8b8d-522e03b65919">PROPERTY AND EQUIPMENT, NET &#160;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment, net consists of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Useful&lt;br/&gt;Lives&lt;br/&gt;(years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Building and leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5-39&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;147,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;137,448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Computer equipment and purchased software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3-5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;108,571&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;99,435&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;30,666&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;28,506&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Transportation equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;295&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;305,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;284,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(137,910)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(112,583)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;168,004&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;171,861&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation expense was $25.5 million in 2020, $23.4 million in 2019, and $21.2 million in 2018.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We paid $9.9 million and $20.8 million for real estate and the expansion of existing buildings in 2020 and 2019, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzQ3OQ_78e689aa-ab5d-4ea5-ae98-99ad69f8ab53">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment, net consists of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Useful&lt;br/&gt;Lives&lt;br/&gt;(years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Building and leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5-39&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;147,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;137,448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Computer equipment and purchased software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3-5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;108,571&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;99,435&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;30,666&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;28,506&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Transportation equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;295&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;305,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;284,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(137,910)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(112,583)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;168,004&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;171,861&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i6866bb1920874c24b16f29ca6bede98b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzEtMy0xLTEtMA_78ef178f-7fa3-4cbc-a877-bd08c91c0358"
      unitRef="usd">18653000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="iac0ae79f1469490a90790daa11e7f2f0_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzEtNS0xLTEtMA_5747900f-4040-45c3-8b54-6a2c500b5e3f"
      unitRef="usd">18653000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="icc3a8ea7b5b24160ac5abb90cdf333b9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzItMS0xLTEtMC90ZXh0cmVnaW9uOjZmYjFjOTZjNjM3ZjRlOTBhYzk3OWYwNTY0Y2M4MDc1XzI3NDg3NzkwNjk0NDk_30f910d0-fd75-4aef-b4d1-83d56d76a0b7">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i2746c1cc021146b0aec5e58779f3076e_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzItMS0xLTEtMC90ZXh0cmVnaW9uOjZmYjFjOTZjNjM3ZjRlOTBhYzk3OWYwNTY0Y2M4MDc1XzI3NDg3NzkwNjk0NTQ_dc6d88bf-7c63-4568-bf9c-e9bc2ad37e3e">P39Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i3219e002c83348cab50b0e6ffa6b4191_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzItMy0xLTEtMA_560d2b17-1097-49bb-8f8a-98535d456cb3"
      unitRef="usd">147729000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="if46f51fb226c43048218559f563502a9_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzItNS0xLTEtMA_15cd9945-bc44-49bb-9ea0-c847f409a93b"
      unitRef="usd">137448000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="idb690a8e4d1e40d4b27b724094ce54c9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzMtMS0xLTEtMC90ZXh0cmVnaW9uOmVmNTY3MGFhZDQ3ODQ3NTliNGIxZGM0NzVmYzg4Y2MwXzI3NDg3NzkwNjk0NTk_159f8fcc-bfdf-46e6-a854-bdd8f219d823">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i77f680c29cb34a808e25c0b8104d80f5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzMtMS0xLTEtMC90ZXh0cmVnaW9uOmVmNTY3MGFhZDQ3ODQ3NTliNGIxZGM0NzVmYzg4Y2MwXzI3NDg3NzkwNjk0NjM_afeeaae3-7522-4ddc-ae89-21703d8235ed">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i58093d3d479849cfbd2eff31482f9783_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzMtMy0xLTEtMA_946495a8-2628-4217-87c8-e36523c9775f"
      unitRef="usd">108571000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i1a65b3cf8d7149d1ade784c3e5c89b3b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzMtNS0xLTEtMA_3d19fa48-366f-4aa7-b923-6dc2fa05f38b"
      unitRef="usd">99435000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="if88cb4be8f1344d09dfd429816868c60_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzQtMS0xLTEtMA_421150d7-9313-49a7-a357-cda7b6dd0dbe">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i0835333b1817476fae0b3a5feef10690_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzQtMy0xLTEtMA_3b87fd2a-a404-4d1b-a55e-7c4bea125d75"
      unitRef="usd">30666000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="iba8cb413cfd641da91dc0775bb79a227_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzQtNS0xLTEtMA_fb27ea21-8952-4483-b675-ebd423d1467d"
      unitRef="usd">28506000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ice971cc672f04378945f87c4139a37f4_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzUtMS0xLTEtMA_fbbfa34c-4c81-4449-913b-cde6b0017289">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i929fdd1b837d46ff933ec52c444aa16b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzUtMy0xLTEtMA_e3e5582c-61ca-437f-9df6-2da547f0a561"
      unitRef="usd">295000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="id494010e2e764b258a7e6e507f72179a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzUtNS0xLTEtMA_708e5a80-1894-4f7f-bd60-549606a44306"
      unitRef="usd">402000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzYtMy0xLTEtMA_85f9e35b-4816-4e79-82f6-432027c6d962"
      unitRef="usd">305914000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzYtNS0xLTEtMA_3592eb3d-6c0d-40ff-9ad5-ff83c61d6611"
      unitRef="usd">284444000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzctMy0xLTEtMA_4ef69997-2eab-47e1-a1fd-ac6c0b57b8c0"
      unitRef="usd">137910000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzctNS0xLTEtMA_11d5d0d3-7846-4f5d-a91e-781b1c6c1a62"
      unitRef="usd">112583000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzgtMy0xLTEtMA_06583de7-904a-4238-a6db-5710edabf408"
      unitRef="usd">168004000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90YWJsZTo3MDQ5OWRhYTU5NmQ0ZjlmOTBhNWQ1NzBlNTMyYjZmNy90YWJsZXJhbmdlOjcwNDk5ZGFhNTk2ZDRmOWY5MGE1ZDU3MGU1MzJiNmY3XzgtNS0xLTEtMA_49cc82c6-04f9-4bb8-aca3-009c27cc3665"
      unitRef="usd">171861000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzEzMw_de657f67-7108-423d-b0aa-324fbe899dfc"
      unitRef="usd">25500000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzE0Mw_9155ace5-8471-4a76-8edf-1ab6990d2226"
      unitRef="usd">23400000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzE1Nw_d19e2781-7a98-48b5-a229-e88a24a8e3d9"
      unitRef="usd">21200000</us-gaap:Depreciation>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzE2NDkyNjc0NDI1MTU_9a7e9263-040e-4b83-82c9-46629204660f"
      unitRef="usd">9900000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzAvZnJhZzpjZmMwYTMzOWE4MmU0Nzk0OTIxMzkwZTNlNzc2M2M0ZC90ZXh0cmVnaW9uOmNmYzBhMzM5YTgyZTQ3OTQ5MjEzOTBlM2U3NzYzYzRkXzI3NDg3NzkwNzAyNDA_bb500655-ce13-4578-9cff-ce32feb3f0cc"
      unitRef="usd">20800000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwOTU_12a2c7db-cf02-4b52-9d49-c072d6810725">GOODWILL AND OTHER INTANGIBLE ASSETS&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the carrying amount of goodwill for the two years ended December&#160;31, 2020 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:12pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.013%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&lt;br/&gt; and Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance as of 12/31/2018&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;739,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;14,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;753,718&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Goodwill acquired related to the purchase of MicroPact&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;76,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;76,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Goodwill acquired related to other acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance as of 12/31/2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;825,949&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;14,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;840,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Purchase price adjustments related to CHT acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,689)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,689)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance as of 12/31/2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;824,260&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;14,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;838,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.012%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Gross carrying amount of other intangibles:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Customer related intangibles&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;322,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;321,019&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Acquired software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;262,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;262,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capitalized software development costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Leases acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;623,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;616,051&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accumulated amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(292,239)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(237,137)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total other intangibles, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;331,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;378,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 $55.1 million in 2020, $52.8 million in 2019, and $39.6 million in 2018.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amortization periods of other intangible assets is summarized in the following table:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.235%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.100%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Amortization&lt;br/&gt;Period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Amortization&lt;br/&gt;Period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-amortizable intangibles:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;838,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;840,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortizable intangibles:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Customer related intangibles&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;322,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;116,609&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;321,019&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;97,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Acquired software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;262,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;162,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;262,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;130,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,366&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capitalized software development costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Leases acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,426&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 $525,000 in 2021, $525,000 in 2022, $525,000 in 2023, $525,000 in 2024, $397,000 in 2025, and $114,000 thereafter&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs. Capitalized software in progress of $4.5 million has been excluded from the estimated annual amortization expense table below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:62.777%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:84.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.839%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;54,411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;50,713&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;32,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;31,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;30,622&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;123,805&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;324,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwOTI_90900dfb-9912-47f6-be6e-0371e708aac9">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the carrying amount of goodwill for the two years ended December&#160;31, 2020 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:12pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.013%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&lt;br/&gt; and Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance as of 12/31/2018&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;739,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;14,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;753,718&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Goodwill acquired related to the purchase of MicroPact&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;76,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;76,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Goodwill acquired related to other acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance as of 12/31/2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;825,949&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;14,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;840,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Purchase price adjustments related to CHT acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,689)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,689)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance as of 12/31/2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;824,260&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;14,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;838,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="if80f7bfbeee84d0f85fffb52339ed359_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzEtMS0xLTEtMA_1549d08c-eaeb-4740-aab7-74951edfb434"
      unitRef="usd">739550000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i73b70e86f2b14fe195929fadc40a68ac_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzEtMy0xLTEtMA_6b6ad9ab-f9db-4ff6-bc59-29e2a0490086"
      unitRef="usd">14168000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzEtNS0xLTEtMA_f705e059-edf5-435d-baf8-f89fdbca6ab9"
      unitRef="usd">753718000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i71e9c53e377c4402a13fadc418b82438_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzItMS0xLTEtMA_bbd108ea-41bc-432f-b9fc-b38bd319ee67"
      unitRef="usd">76319000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i4abbeb24189541c4b6dde107c2f08de9_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzItMy0xLTEtMA_3976ec68-0a94-4649-b3db-65d0fa197aa2"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i5803bdc414da480a9dbe249393f7f1a4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzItNS0xLTEtMA_d4d7b537-9b6b-48d0-aa02-cdb450cf6200"
      unitRef="usd">76319000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i2e962ad96fae4176955ee8a514f8468e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzMtMS0xLTEtMA_042139b7-c2a3-4afb-b25a-9e2a8c86439e"
      unitRef="usd">10080000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="if3a281d63b5f4808ba90cf0e318a5207_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzMtMy0xLTEtMA_ac81abdd-32e2-4aed-b134-7309d3a54626"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i77f4f7b40a0a4e9c8e60200ae6adb450_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzMtNS0xLTEtMA_0827a0e7-593f-496f-904b-262165947d1a"
      unitRef="usd">10080000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:Goodwill
      contextRef="i30de2f6d29134baeb9d7fd10ef9c2769_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzQtMS0xLTEtMA_8c29bdab-4b35-40b1-9ae7-8780594349bb"
      unitRef="usd">825949000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i04a262b445d242e0bc9ec15c5b189ca5_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzQtMy0xLTEtMA_28df6bf5-ee80-4ae5-bbb4-95127c0097fc"
      unitRef="usd">14168000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzQtNS0xLTEtMA_49f05b69-f055-447a-9c4e-62d188933b7c"
      unitRef="usd">840117000</us-gaap:Goodwill>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i1b2789605e86461fb518b096c797b999_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzYtMS0xLTEtMA_e3c483e9-9074-4c72-b53c-c89cb9c5f620"
      unitRef="usd">-1689000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="id9eb4c1627904b098348ff6d8e2672a8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzYtMy0xLTEtMA_afbe0c69-9bac-4066-806e-05ce803a6b1f"
      unitRef="usd">0</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="ib380b3b73a1a40f99d813fb62fa45604_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzYtNS0xLTEtMA_88649bc6-7bf6-4bdf-845c-2a4f26cfba79"
      unitRef="usd">-1689000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:Goodwill
      contextRef="ifd8cb8d148054fdaac26c7fe42e99562_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzctMS0xLTEtMA_6878aaf5-dc15-4d61-a443-a6de41037da1"
      unitRef="usd">824260000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i791885cd70434284b30f7d4168cf471a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzctMy0xLTEtMA_2da71bbd-2c40-4698-b8c8-290304ce569f"
      unitRef="usd">14168000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZToxYzNjNTYwODFlYzY0YmE1YWRmODQ2ODdiN2UzMjJkNi90YWJsZXJhbmdlOjFjM2M1NjA4MWVjNjRiYTVhZGY4NDY4N2I3ZTMyMmQ2XzctNS0xLTEtMA_a1d47689-522c-4bcb-af07-fb7aea7291a9"
      unitRef="usd">838428000</us-gaap:Goodwill>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwNzk_5a1414f0-3dff-4656-b026-eec23b2ce170">&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.012%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Gross carrying amount of other intangibles:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Customer related intangibles&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;322,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;321,019&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Acquired software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;262,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;262,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capitalized software development costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Leases acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;623,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;616,051&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accumulated amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(292,239)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(237,137)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total other intangibles, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;331,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;378,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i314ed68cc2a844c397cb8dc976771b9d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzItMS0xLTEtMA_eac47ac3-f75b-42b3-b341-71d2d67191a8"
      unitRef="usd">322619000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iec288e447c034f6b8cf1ba7b7f05c5e7_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzItMy0xLTEtMA_46061eb6-b6ff-4123-bf5d-baa0b5d2b8ad"
      unitRef="usd">321019000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ieb33b4efea03473594b246452e01b04d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzMtMS0xLTEtMA_be602233-76a2-4a75-abea-d89bb288b33c"
      unitRef="usd">262286000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i619de32472a14447b2ac8bd16d2f248a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzMtMy0xLTEtMA_ede8e452-aec8-4dc3-8a12-0a0f6201cb88"
      unitRef="usd">262286000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i3d5e11a6c02b4b31af1d4d6cb20eefc5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzQtMS0xLTEtMA_4f4aee5a-83c1-41cc-aada-1ff47f5bcc01"
      unitRef="usd">22905000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i9d3c25ebfdc949c590c6550e4767d78f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzQtMy0xLTEtMA_bfcc3e66-38c3-495d-9dab-9b4b609aac33"
      unitRef="usd">22905000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="if76b71899a304e0eb9638dc793cbb1ff_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzUtMS0xLTEtMA_03ad953e-bd0c-4451-a014-cc19db531b7f"
      unitRef="usd">10581000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i12489bfd9ab94c08af9a2cb062f4847b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzUtMy0xLTEtMA_e0ac5467-2164-431b-ac95-7c853d2e4482"
      unitRef="usd">4804000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzYtMS0xLTEtMA_427bea3e-1c4a-4043-a982-758a935b6998"
      unitRef="usd">5037000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i0d6fb75fb1f14fd095dad540a4435cd1_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzYtMy0xLTEtMA_28a8f2af-3fa0-4c54-a0e6-f930f5d6ab3c"
      unitRef="usd">5037000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzctMS0xLTEtMA_f1242342-0a18-46c8-b756-a7eed9f6ae5b"
      unitRef="usd">623428000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzctMy0xLTEtMA_e1eff231-e41c-46b1-be95-166d36ab877f"
      unitRef="usd">616051000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzgtMS0xLTEtMA_d38bc087-a4dd-4917-a876-ccd3c7c88c1d"
      unitRef="usd">292239000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzgtMy0xLTEtMA_943c856b-e9f2-4f6b-a764-fe45b1bebe77"
      unitRef="usd">237137000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzktMS0xLTEtMA_cb33296d-b0ee-4f1a-98b2-dfc85d6997e2"
      unitRef="usd">331189000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTpjOTY0NjQ5NDVkZjk0OTAwODZjYjQ1ZWIwZmE0ZDE0NS90YWJsZXJhbmdlOmM5NjQ2NDk0NWRmOTQ5MDA4NmNiNDVlYjBmYTRkMTQ1XzktMy0xLTEtMA_c7c59415-7223-46df-b091-e8ce728762da"
      unitRef="usd">378914000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzU0MQ_9d5b7578-3620-4a7d-a8a5-3ec0aa6b53e5"
      unitRef="usd">55100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzU1MQ_4bdb4561-18e9-4654-a7ba-c5ebf5d4cf78"
      unitRef="usd">52800000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzU2NQ_cdcd547d-488a-4b6e-8436-fc9df4749aec"
      unitRef="usd">39600000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwODk_0251dedd-1a86-49e4-b6c3-85c36f6e7ab5">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amortization periods of other intangible assets is summarized in the following table:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.235%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.100%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Amortization&lt;br/&gt;Period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Amortization&lt;br/&gt;Period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-amortizable intangibles:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;838,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;840,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortizable intangibles:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Customer related intangibles&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;322,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;116,609&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;321,019&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;97,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Acquired software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;262,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;162,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;262,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;130,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,366&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capitalized software development costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Leases acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,426&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock>
    <us-gaap:Goodwill
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzMtMS0xLTEtMA_da9e2167-e57f-42b9-8114-37c7cba8a79e"
      unitRef="usd">838428000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzMtNy0xLTEtMA_dee51f5f-b54b-4ad1-9d0b-58942c8b7ea1"
      unitRef="usd">840117000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i314ed68cc2a844c397cb8dc976771b9d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtMS0xLTEtMA_5a7e61f7-bbc6-43c5-8d6d-adb8d3d220b6"
      unitRef="usd">322619000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i85174adb41d4484092b78a7104980b10_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtMy0xLTEtMA_159598bc-1c79-4ad5-8d9a-ce17a4831fed">P16Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i314ed68cc2a844c397cb8dc976771b9d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtNS0xLTEtMA_1de5d623-ab89-4a39-96d5-c44872503451"
      unitRef="usd">116609000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iec288e447c034f6b8cf1ba7b7f05c5e7_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtNy0xLTEtMA_b2d631fb-114d-41b4-926a-5d6b5dcbac82"
      unitRef="usd">321019000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ia676244b50ab49529c59c19f228664bc_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtOS0xLTEtMA_544542c0-e900-47e2-b4ae-1a41d6ed299f">P16Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="iec288e447c034f6b8cf1ba7b7f05c5e7_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzUtMTEtMS0xLTA_126da26e-ebbf-4bbb-a6fe-44b3f602dd31"
      unitRef="usd">97320000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ieb33b4efea03473594b246452e01b04d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtMS0xLTEtMA_09f14f62-686b-44b0-9d04-d2b1f5dc2f45"
      unitRef="usd">262286000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i07476736cfec4b56a28475a43618cde8_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtMy0xLTEtMA_e8374d00-af62-472c-ad66-20054d5d06af">P7Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ieb33b4efea03473594b246452e01b04d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtNS0xLTEtMA_c220e430-52a4-484e-9d57-e45af2e14afc"
      unitRef="usd">162378000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i619de32472a14447b2ac8bd16d2f248a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtNy0xLTEtMA_74105e5e-20a6-4563-a598-efc0115c433d"
      unitRef="usd">262286000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i9b12338499724618a2f10c02c169b31d_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtOS0xLTEtMA_f59a2f25-00f5-450c-9986-86e8089a36af">P7Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i619de32472a14447b2ac8bd16d2f248a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzYtMTEtMS0xLTA_cc171c9d-9647-4d93-923f-91580398f0fa"
      unitRef="usd">130416000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i3d5e11a6c02b4b31af1d4d6cb20eefc5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctMS0xLTEtMA_7a88a7b3-b4b9-4e69-bc24-43aedddec185"
      unitRef="usd">22905000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i32d834599c984f9ebf196a393bf7b1e1_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctMy0xLTEtMA_baea286b-5a70-4b26-a9d9-69ded2b7de98">P11Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i3d5e11a6c02b4b31af1d4d6cb20eefc5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctNS0xLTEtMA_47b132c0-055d-48c2-b660-a47d57d0f89c"
      unitRef="usd">9366000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i9d3c25ebfdc949c590c6550e4767d78f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctNy0xLTEtMA_d4034196-7255-4a52-832b-68f0239942c2"
      unitRef="usd">22905000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ie844a30b32d14f259d80645725dfc9e7_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctOS0xLTEtMA_f8bc550f-88d1-4526-8a84-d5eb90523fd0">P11Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i9d3c25ebfdc949c590c6550e4767d78f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzctMTEtMS0xLTA_f3a3ddeb-84f6-4fb9-af9e-09ca169769d9"
      unitRef="usd">7205000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="if76b71899a304e0eb9638dc793cbb1ff_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtMS0xLTEtMA_0f32350c-b2b2-4665-afe3-71eec984f5ff"
      unitRef="usd">10581000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i05d88abff85f46cd8730d3d2b41c3a52_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtMy0xLTEtMA_f9af9338-cf35-418d-b62a-61a82bbc9a6a">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="if76b71899a304e0eb9638dc793cbb1ff_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtNS0xLTEtMA_1f272773-0908-4edd-8aed-d367672051cb"
      unitRef="usd">1460000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i12489bfd9ab94c08af9a2cb062f4847b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtNy0xLTEtMA_7c00466c-b69e-4553-93ac-de41aa3f15cf"
      unitRef="usd">4804000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i4e10c2b062704e0d89feb98366351063_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtOS0xLTEtMA_b239f945-0755-47fa-8d47-ae5c7e6354e8">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i12489bfd9ab94c08af9a2cb062f4847b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzgtMTEtMS0xLTA_1bb3e5f3-0628-411f-a84f-e1e96f37885b"
      unitRef="usd">296000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktMS0xLTEtMA_af5f5eaa-3166-4ae2-9b52-629e7fed7771"
      unitRef="usd">5037000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ib35a4cc09656425db4048e1d9fbfa6a2_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktMy0xLTEtMA_3366efea-be2e-47f9-a857-3028040a7b31">P9Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktNS0xLTEtMA_43857d44-29e2-4ba2-92f0-64fa3951e333"
      unitRef="usd">2426000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i0d6fb75fb1f14fd095dad540a4435cd1_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktNy0xLTEtMA_798f92d5-b853-4126-a125-f6fb0b9bc776"
      unitRef="usd">5037000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i6b228d04c2874010925935400911f3cb_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktOS0xLTEtMA_4792b427-4003-4fe1-8393-ba583a1c9504">P9Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i0d6fb75fb1f14fd095dad540a4435cd1_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTA5ODc3ZDM2ODk0M2RkOTk5MTg2ZWI0YzBjZGM4Yy90YWJsZXJhbmdlOjRlMDk4NzdkMzY4OTQzZGQ5OTkxODZlYjRjMGNkYzhjXzktMTEtMS0xLTA_b9f90acc-9bf6-46aa-97c6-b64019602194"
      unitRef="usd">1900000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzgxNw_ead24741-66e5-4e11-94cd-bec795a5d757"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzgyNw_43672c96-94c8-478b-be28-baf24d6b1889"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzgzNw_581888eb-13b1-4d4e-87a3-406da04045ac"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzg0Nw_eaba2546-9be7-452d-b257-14807b8ce10d"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzg1Nw_62b49197-2f79-4cf4-a8e6-266369fcae32"
      unitRef="usd">397000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="i51e9483e637b4b27ad714b5dd787651c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzg3MQ_867b1d57-c987-4ce1-8f89-31655a1aba47"
      unitRef="usd">114000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzEwODA_657fdb20-866b-4dec-853a-67a7f7a72f7c">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs. Capitalized software in progress of $4.5 million has been excluded from the estimated annual amortization expense table below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:62.777%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:84.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.839%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;54,411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;50,713&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;32,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;31,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;30,622&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;123,805&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;324,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90ZXh0cmVnaW9uOmQ3YWRhY2M1MjRjMzQ1Y2M4MTVmODk3ZWMyZWZjYmJjXzIxOTkwMjMyNTY5Mjg_0a6b17fb-db65-4f34-a502-7c32de649a6b"
      unitRef="usd">4500000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzAtMS0xLTEtMA_c0f6956d-c10b-4e71-a8cc-9e5a8b4d8956"
      unitRef="usd">54411000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzEtMS0xLTEtMA_245b0892-a7ed-414b-a768-63859a6659a6"
      unitRef="usd">50713000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzItMS0xLTEtMA_cc0aa5d2-eb43-4cc4-b287-b47a87a07b1a"
      unitRef="usd">32562000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzMtMS0xLTEtMA_63145fa8-0dc4-4912-9847-3fcfe34c7e6b"
      unitRef="usd">31978000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzQtMS0xLTEtMA_7bcfb125-5ad9-486e-9837-d8a839a66c64"
      unitRef="usd">30622000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzUtMS0xLTEtMA_3d4327fb-ebee-4daf-97b6-91efa8136fdb"
      unitRef="usd">123805000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzYvZnJhZzpkN2FkYWNjNTI0YzM0NWNjODE1Zjg5N2VjMmVmY2JiYy90YWJsZTo0ZTM1NGUwODYzYzQ0ODc1OGIwNWQ4ODdkNDgwZDUwZS90YWJsZXJhbmdlOjRlMzU0ZTA4NjNjNDQ4NzU4YjA1ZDg4N2Q0ODBkNTBlXzYtMS0xLTEtNDQwOA_bf539b41-ac16-4862-ada2-d2bd7f9f1ee6"
      unitRef="usd">324091000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90ZXh0cmVnaW9uOjAyZTRkMjkyNDg3OTRjZmJiNmYxZGM5MmI3OGEzZDNjXzkw_fea04326-edd1-4844-b193-1e8bf863dc9c">ACCRUED LIABILITIES&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consist of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.791%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accrued wages, bonuses and commissions&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;63,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;49,126&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;26,108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;83,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;75,234&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90ZXh0cmVnaW9uOjAyZTRkMjkyNDg3OTRjZmJiNmYxZGM5MmI3OGEzZDNjXzk1_80ad1fd8-ac27-4f2a-9de4-0d7ff10002f0">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consist of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.791%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Accrued wages, bonuses and commissions&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;63,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;49,126&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;26,108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;83,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;75,234&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzEtMS0xLTEtMA_fbe303e1-3a7b-4ec6-bb11-cdffaa21c267"
      unitRef="usd">63814000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzEtMy0xLTEtMA_af594fe2-5a2c-449d-a4dd-c78b33b06f5a"
      unitRef="usd">49126000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzItMS0xLTEtMA_8956912a-edef-41ae-9bd4-025a3580e107"
      unitRef="usd">19270000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzItMy0xLTEtMA_6186df6f-42ce-4813-a5c8-33336004fa0e"
      unitRef="usd">26108000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzMtMS0xLTEtMA_fff9add5-5423-4290-beb0-7f8838fc0ec5"
      unitRef="usd">83084000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMzkvZnJhZzowMmU0ZDI5MjQ4Nzk0Y2ZiYjZmMWRjOTJiNzhhM2QzYy90YWJsZToxNDRkZGQ1M2RlMzY0NGI5YTAxYTUwYWNjNTY2OWI2Yi90YWJsZXJhbmdlOjE0NGRkZDUzZGUzNjQ0YjlhMDFhNTBhY2M1NjY5YjZiXzMtMy0xLTEtMA_21cc1270-25ff-41fc-8596-e978b3ebbdb1"
      unitRef="usd">75234000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzE0NTc_9a550bf7-802e-4d6c-9ced-0f54dc000b05">REVOLVING LINE OF CREDIT&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On September&#160;30, 2019, we entered into a $400 million credit agreement (the &#x201c;Credit Facility&#x201d;) with the various lenders party thereto and Wells Fargo Bank, National Association, as Administrative Agent. The Credit Facility provides for unsecured revolving credit in an aggregate principal amount of up to&#160;$400 million, including a $25 million sublimit for letters of credit. The Credit Facility matures on September&#160;30, 2024. 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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 0.125% to 0.75% or (2) the 30, 60, 90 or 180-day LIBOR rate plus a margin of 1.125% to 1.75%.&#160; As of December&#160;31, 2020, our interest rate was 3.38% under the prime rate option or approximately 1.27% 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 December&#160;31, 2020, we were in compliance with those covenants.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December&#160;31, 2020, we had no outstanding borrowings and had unused borrowing capacity of $400 million under the Credit Facility&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; In addition, as of December&#160;31, 2020, we had one outstanding standalone letter of credit totaling $2 million in favor of a client contract. The letter of credit guarantees our performance under the contract and expires in 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We paid interest of $610,000 in 2020, $1,750,000 in 2019, and $770,000 in 2018.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i0b793b88738448c8b424e13b38750dfe_I20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzU2_c06437e0-0344-498a-8da7-b3ebfe192640"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i0b793b88738448c8b424e13b38750dfe_I20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzMyNA_c06437e0-0344-498a-8da7-b3ebfe192640"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i2ba12eae25fc408f819a9460e865b419_I20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzM0MA_fdd58377-b2fd-4b44-b192-c868e9fc6f57"
      unitRef="usd">25000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i895d9f7aa1c94c2197d32ead27eda95d_D20190930-20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzczNw_0834fddf-96d9-4ee5-ac0d-3ab06f2242eb"
      unitRef="number">0.00125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i08f4d489526345e7985462400385c9e3_D20190930-20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzc0Mw_2467c5bf-04f9-4fe3-b179-df8c1fc50202"
      unitRef="number">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i6f87819252ba4d4b8f5ec2969bfc24fd_D20190930-20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzgwNw_5cc60e8c-e8e1-4fcc-8689-d7b483dfdcc9"
      unitRef="number">0.01125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i1762aa0ea46e431289b30c6cb3c49679_D20190930-20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzgxMw_a8bf0386-4930-466b-843d-aacaee0fb2b0"
      unitRef="number">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i64fffae190564776a26bd84c84225be2_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzg1MA_9b5e3e58-ec9b-4118-9ca0-a98bfddee795"
      unitRef="number">0.0338</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="ibf1b14c92e824bdeac21fa748bda20f6_I20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzg5OA_ce85f17b-f82e-48d1-b008-11b738bca24e"
      unitRef="number">0.0127</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:LongTermLineOfCredit
      contextRef="i64fffae190564776a26bd84c84225be2_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzEyNDg_1593b2ea-e430-4bc6-ba1f-00020b3b538b"
      unitRef="usd">0</us-gaap:LongTermLineOfCredit>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i64fffae190564776a26bd84c84225be2_I20201231"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzEzMTE_250e4a32-04a4-4ea7-bd68-9e04cb1ab841"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzEzNzE_2b34fc6a-2bc0-4027-b24e-f80d20e6f189"
      unitRef="usd">2000000</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:InterestPaidNet
      contextRef="id2bea65be2e44fcf810050142e2320ff_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzIxOTkwMjMyNTczNzI_8e384099-2a8e-4d56-9662-999f30670837"
      unitRef="usd">610000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="iaeffcc8d31f34ceeaaea2f0110344bb9_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzE0MzQ_de1739fe-2faa-4ae3-9b4c-bc2fe71dd9ee"
      unitRef="usd">1750000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="ia88a5e942ac04b79ae2b9099fbf1302c_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDIvZnJhZzpiMWI0N2Q1NTdmYmM0OGEzYjI1ZmJlNmQxMjBiNDU2ZS90ZXh0cmVnaW9uOmIxYjQ3ZDU1N2ZiYzQ4YTNiMjVmYmU2ZDEyMGI0NTZlXzE0NDg_589a96f4-6dd5-4b8a-aed3-bee2ffa2e555"
      unitRef="usd">770000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1Mzk_fe729485-661c-4493-925a-f5618f909b97">INCOME TAX  Income tax (benefit) provision on income from operations consists of the following:&lt;div style="margin-bottom:14pt;margin-top:12pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(10,538)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;12,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,304)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(11,842)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,399&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,477&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(7,936)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(6,088)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(5,069)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,778)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,311&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Federal income tax expense at statutory rate&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;36,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;33,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;32,733&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;State income tax, net of federal income tax benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,677&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net operating loss carryback&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3,445)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Excess tax benefits of share-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(60,190)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(29,819)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(32,487)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Adjustments from the 2017 Tax Cuts and Jobs Act &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,750)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Tax credits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3,867)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3,446)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3,715)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-deductible business expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,778)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,311&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Coronavirus Aid, Relief and Economic Security ("CARES") Act, which was signed into law on March 27, 2020, provides an estimated $2.2 trillion to fight the COVID-19 pandemic and stimulate the U.S. economy. The assistance includes tax relief and government loans, and investments and grants for entities in affected industries (e.g., health care, airlines). &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The business tax provisions of the CARES Act include temporary changes to income and non-income based tax laws, including the ability to utilize net operating losses, interest expense deductions, alternative minimum tax credit refunds, charitable contributions, and depreciation of qualified improvement property. Measures not related to income-based taxes include (1) allowing an employer to pay its share of Social Security payroll taxes that would otherwise be due from the date of enactment through December 31, 2020, over the following two years and (2) allowing eligible employers subject to closure due to the COVID-19 pandemic to receive a 50% credit on qualified wages against their employment taxes each quarter, with any excess credits eligible for refunds.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The most significant provision of the CARES Act impacting our accounting for income taxes is the five-year carryback allowance for taxable net operating losses generated in tax years in which the statutory federal income tax rate is 21.0%, to periods in which the statutory federal income tax rate is 35.0%. We intend to carry back our 2020 taxable loss into our 2015 tax year, which results in a $3.4 million income tax benefit in the current year.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:9pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.012%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferred income tax assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating expenses not currently deductible&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Stock option and other employee benefit plans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,446&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,308&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Loss and credit carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;27,199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,841&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total deferred income tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,490)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,923)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total deferred income tax assets, net of valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;52,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;51,440&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferred income tax liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(76,766)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(84,019)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(9,918)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(9,265)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(6,869)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(4,922)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;807&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,676)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(92,746)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(99,882)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(40,507)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(48,442)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, we had federal net operating loss carryforwards of approximately $81.5 million, after-tax state net operating loss carryforwards of approximately $3.5 million, and tax credit carryforwards of approximately $8.6 million.  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 2021 if not utilized.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In connection with the acquisition of Socrata in 2018, we recorded a $1.9 million 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 2020.  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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 February&#160;19, 2021, no significant adjustments have been proposed by any taxing jurisdiction.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We paid income taxes, net of refunds received, of $3.3 million in 2020, $21.3 million in 2019, and $6.8 million in 2018.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1NDA_7d905159-eecb-4633-ac80-667c6c87bfa4">Income tax (benefit) provision on income from operations consists of the following:&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(10,538)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;12,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,304)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(11,842)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,399&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,477&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(7,936)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(6,088)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(5,069)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,778)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,311&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzMtMS0xLTEtMA_feabd3a8-5719-4271-b02b-05580610e8b1"
      unitRef="usd">-10538000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzMtMy0xLTEtMA_9298e450-5f26-4be9-a6e2-b16cb81a0044"
      unitRef="usd">12814000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzMtNS0xLTEtMA_bfd972b3-9a9e-4813-834f-a73b87a8992f"
      unitRef="usd">9110000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzQtMS0xLTEtMA_63786f53-35dd-4ebd-87ad-1539f172aec2"
      unitRef="usd">-1304000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzQtMy0xLTEtMA_dfb2011b-efb4-431d-8dda-28750d5c3efd"
      unitRef="usd">6585000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzQtNS0xLTEtMA_89faff02-ac7c-4a1c-91ed-e142cee5de7a"
      unitRef="usd">4367000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzUtMS0xLTEtMA_f0dd54b9-1b36-4aa3-9c55-a6ce5e91bba3"
      unitRef="usd">-11842000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzUtMy0xLTEtMA_d15ef3c8-9255-4d9a-a5c2-7c2b06a74fbd"
      unitRef="usd">19399000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzUtNS0xLTEtMA_d0cad54c-66a4-4a8e-ad8e-7a00f1901828"
      unitRef="usd">13477000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzYtMS0xLTEtMA_363c9f5d-85d1-4965-ba76-e908847f6d8f"
      unitRef="usd">-7936000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzYtMy0xLTEtMA_755d50a7-c059-4588-812f-ca11d00834b2"
      unitRef="usd">-6088000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzYtNS0xLTEtMA_5c396d65-9e2e-43d6-a064-ff65346b0ac5"
      unitRef="usd">-5069000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzctMS0xLTEtMA_71f86412-6018-4ef4-b643-7eafd9af0209"
      unitRef="usd">-19778000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzctMy0xLTEtMA_83c017b5-7fc2-4374-ae7e-28244cdc72ef"
      unitRef="usd">13311000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTpjYThiMmFhNDAyZjA0Njc3OTA5MDA5ZGQxMWRhODQ0Ny90YWJsZXJhbmdlOmNhOGIyYWE0MDJmMDQ2Nzc5MDkwMDlkZDExZGE4NDQ3XzctNS0xLTEtMA_513ddb27-41e7-4aac-888a-ce863b0ada78"
      unitRef="usd">8408000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1NDE_46ed3474-afa1-4574-b90b-b766bc37db67">&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Federal income tax expense at statutory rate&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;36,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;33,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;32,733&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;State income tax, net of federal income tax benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,677&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net operating loss carryback&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3,445)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Excess tax benefits of share-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(60,190)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(29,819)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(32,487)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Adjustments from the 2017 Tax Cuts and Jobs Act &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,750)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Tax credits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3,867)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3,446)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3,715)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-deductible business expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,778)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,311&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzItMS0xLTEtMA_bef62693-57af-4dd7-ba46-3b974343f796"
      unitRef="usd">36759000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzItMy0xLTEtMA_a44b4280-a65a-4a6f-ab93-efa529e09821"
      unitRef="usd">33566000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzItNS0xLTEtMA_67b1e48c-e852-47a4-872a-9c4123cfae05"
      unitRef="usd">32733000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzMtMS0xLTEtMA_abc5101a-1353-459f-b41e-8815b2bec371"
      unitRef="usd">6677000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzMtMy0xLTEtMA_4de77f34-8d99-4180-b875-646de8395eec"
      unitRef="usd">6999000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzMtNS0xLTEtMA_909f47f2-4664-40e6-af30-296fec6b8f28"
      unitRef="usd">7953000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <tyl:NetOperatingLossCarryback
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzQtMS0xLTEtMA_c624c0bb-4a2d-40bf-98be-9f1c0d3a96aa"
      unitRef="usd">3445000</tyl:NetOperatingLossCarryback>
    <tyl:NetOperatingLossCarryback
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzQtMy0xLTEtMA_f492e28e-deee-40c3-abc6-2c5e2d4bda5c"
      unitRef="usd">0</tyl:NetOperatingLossCarryback>
    <tyl:NetOperatingLossCarryback
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzQtNS0xLTEtMA_3017fbc6-f489-4bd6-b089-5156f3f55d62"
      unitRef="usd">0</tyl:NetOperatingLossCarryback>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzUtMS0xLTEtMA_f0c5128d-73e5-4f81-a3fb-42608f691fcc"
      unitRef="usd">-60190000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzUtMy0xLTEtMA_e9326d62-14d0-40ef-892b-005f74b02dbb"
      unitRef="usd">-29819000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzUtNS0xLTEtMA_18c189d3-18ac-4923-aba1-59b5e028b40c"
      unitRef="usd">-32487000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzYtMS0xLTEtMA_e711b2e2-e420-44c5-8e91-662052ec9abe"
      unitRef="usd">0</tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit>
    <tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzYtMy0xLTEtMA_3d57d747-5925-4d69-ad28-bd658034f2ba"
      unitRef="usd">0</tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit>
    <tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzYtNS0xLTEtMA_6f694f33-ec12-4060-a055-2dbb3a18b7c8"
      unitRef="usd">-1750000</tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzctMS0xLTEtMA_a2409c11-3d00-44f0-8b8c-1db47fc02f2e"
      unitRef="usd">3867000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzctMy0xLTEtMA_8f134212-4e06-4a31-90e8-550efbd858f0"
      unitRef="usd">3446000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzctNS0xLTEtMA_fdf6a384-300a-4063-a50a-69161ce7c949"
      unitRef="usd">3715000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzgtMS0xLTEtMA_fa84148c-f7ab-48da-9d80-926ab12f3859"
      unitRef="usd">4199000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzgtMy0xLTEtMA_263f54fd-651f-440e-9c3c-ec04e417c2bd"
      unitRef="usd">6011000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzgtNS0xLTEtMA_89e3011d-d129-4b90-9801-1dfeec0ac382"
      unitRef="usd">5655000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzktMS0xLTEtMA_a93c5dcc-26f1-4ac1-af93-b6f9c504623a"
      unitRef="usd">89000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzktMy0xLTEtMA_8435804e-19ff-48fa-948e-47ed0248e8e6"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzktNS0xLTEtMA_cc9e4bdf-612a-4c8c-b002-dc5127feafc6"
      unitRef="usd">19000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzEwLTEtMS0xLTA_06bcb9f1-092a-40dd-b4c2-85ba4a43be3c"
      unitRef="usd">-19778000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzEwLTMtMS0xLTA_3c98517f-8539-4237-addb-bee2871c6640"
      unitRef="usd">13311000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZTphYTNlNTY1MTU1YTY0ZmYxYTI5OGMzYTBiMTkxYzU0Mi90YWJsZXJhbmdlOmFhM2U1NjUxNTVhNjRmZjFhMjk4YzNhMGIxOTFjNTQyXzEwLTUtMS0xLTA_418044db-bb49-4aa8-adbb-2c6c4b14b2f6"
      unitRef="usd">8408000</us-gaap:IncomeTaxExpenseBenefit>
    <tyl:NetOperatingLossCarryback
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzIxOTkwMjMyNjc3ODM_8b08525c-c847-4996-be91-3b278ba6ad0c"
      unitRef="usd">3400000</tyl:NetOperatingLossCarryback>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1NDI_0639812f-896d-4b2e-8fdc-d2568a39f891">&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:9pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.012%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferred income tax assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating expenses not currently deductible&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Stock option and other employee benefit plans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,446&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,308&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Loss and credit carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;27,199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,841&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total deferred income tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,490)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,923)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total deferred income tax assets, net of valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;52,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;51,440&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferred income tax liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(76,766)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(84,019)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(9,918)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(9,265)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(6,869)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(4,922)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;807&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,676)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(92,746)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(99,882)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(40,507)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(48,442)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzItMS0xLTEtMA_af546acf-0b92-4c92-92cd-a2ceec9bf230"
      unitRef="usd">9084000</tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible>
    <tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzItMy0xLTEtMA_bc0d52d5-0805-402f-b1c2-572e83da2b67"
      unitRef="usd">10214000</tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzMtMS0xLTEtMA_9a1de22a-5957-48ed-8445-02d99804c140"
      unitRef="usd">17446000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzMtMy0xLTEtMA_df578354-5874-4713-86e9-44f81fa26c87"
      unitRef="usd">19308000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzQtMS0xLTEtMA_0f9d2252-8ae7-446e-a061-7dda3f541015"
      unitRef="usd">27199000</tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards>
    <tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzQtMy0xLTEtMA_5531eddc-c6e4-4ba2-9bfa-aaca414834da"
      unitRef="usd">23841000</tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzUtMS0xLTEtMA_b5c1f228-bd46-49ac-bdf7-90188001e54e"
      unitRef="usd">53729000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzUtMy0xLTEtMA_905ca689-315f-4813-96bd-96f672e6b9ef"
      unitRef="usd">53363000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzYtMS0xLTEtMA_32ab5bab-5fe1-4401-85e1-e86fc62a9787"
      unitRef="usd">1490000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzYtMy0xLTEtMA_388e05c0-8da3-435f-aa33-4b5ae3d990db"
      unitRef="usd">1923000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzctMS0xLTEtMA_7154f4ad-51c4-4892-a050-1246f67570e4"
      unitRef="usd">52239000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzctMy0xLTEtMA_22e3ef94-0fa5-49de-a593-192697cd2f6c"
      unitRef="usd">51440000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEwLTEtMS0xLTA_21df9083-b1ee-4243-9f35-337be5cd1ea4"
      unitRef="usd">76766000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEwLTMtMS0xLTA_46eb77a4-31ec-40dc-ae38-b7ad21683a84"
      unitRef="usd">84019000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzExLTEtMS0xLTA_bf81017d-bede-470e-9d8a-87981360801d"
      unitRef="usd">9918000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzExLTMtMS0xLTA_c16a6e51-c7a3-4561-a251-617ce1553f75"
      unitRef="usd">9265000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEyLTEtMS0xLTA_6ccbd56a-16f0-4735-b13a-d4882978ec25"
      unitRef="usd">6869000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEyLTMtMS0xLTA_36900589-cfe0-4c7c-85a5-19a4f3f78687"
      unitRef="usd">4922000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxAssetsDeferredIncome
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEzLTEtMS0xLTA_7d5e69fd-acbd-4bee-b882-04af56aad8f3"
      unitRef="usd">807000</us-gaap:DeferredTaxAssetsDeferredIncome>
    <us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzEzLTMtMS0xLTA_8ee83a07-fb88-42fe-9cdf-077842ad7633"
      unitRef="usd">1676000</us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzE0LTEtMS0xLTA_31b0a0b0-ce4c-48d4-9c7b-534bb297b3b3"
      unitRef="usd">92746000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzE0LTMtMS0xLTA_eec1e48f-a468-4ef4-8f9f-984f57097679"
      unitRef="usd">99882000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzE1LTEtMS0xLTA_1ac39cef-7aae-4d19-9262-732b067cc222"
      unitRef="usd">40507000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90YWJsZToxYjQ3MjQ1MTVjZDc0NTVlODA5MzAyNTgwZDg5NGI5NC90YWJsZXJhbmdlOjFiNDcyNDUxNWNkNzQ1NWU4MDkzMDI1ODBkODk0Yjk0XzE1LTMtMS0xLTA_b5ae89c3-bab0-4054-9faf-777996d6c13c"
      unitRef="usd">48442000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i735bb4ff00b6467f8f0a9344f904ca28_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzM4Mw_42fe718b-1a42-44a7-a7d3-ed130dfef710"
      unitRef="usd">81500000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i834e04f05e664eb98c0b0969a7be7291_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzQ1Mw_6fd3c9c3-eba5-48ba-b81b-e9313add46d0"
      unitRef="usd">3500000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzUwMw_68219392-ea45-468b-abde-436e66d3e01a"
      unitRef="usd">8600000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzEwOTk1MTE2NDEyODU_86b9429d-bdcf-456d-a80a-43136a20f0c4"
      unitRef="usd">1900000</us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI0OTE_af653288-7436-450d-b716-acd781899694"
      unitRef="usd">3300000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1MDE_c4522bde-87c5-4676-822e-d006823533d9"
      unitRef="usd">21300000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDUvZnJhZzo3OGM2YWVjOGNhMjk0NWRkODIyMzdmYjJhMTRhNTJmZC90ZXh0cmVnaW9uOjc4YzZhZWM4Y2EyOTQ1ZGQ4MjIzN2ZiMmExNGE1MmZkXzI1MTU_b8f5559f-9853-414c-9f19-bb9f206de1d8"
      unitRef="usd">6800000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90ZXh0cmVnaW9uOmVhY2IxMjY0OTQ1MzQ1NGZiYWQ4MzJlMjBlNzIwNDhiXzIwNw_6af387c7-998d-430f-9c4d-117866ba9326">SHAREHOLDERS&#x2019; EQUITY&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table details activity in our common stock:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.235%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.100%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Stock option exercises&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;124,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;96,908&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,126&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;74,907&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Purchases of common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(59)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(15,484)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(72)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(14,289)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(781)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(150,050)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Employee stock plan purchases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,051&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Restricted stock units vested, net of withheld shares upon award settlement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(12,923)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(5,361)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of February&#160;19, 2021, we had authorization from our board of directors to repurchase up to 2.5 million additional shares of our common stock.&lt;/span&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:ScheduleOfStockholdersEquityTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90ZXh0cmVnaW9uOmVhY2IxMjY0OTQ1MzQ1NGZiYWQ4MzJlMjBlNzIwNDhiXzIxMQ_a0dd41a4-de89-4769-8261-08e8363154f4">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table details activity in our common stock:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.235%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.095%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.100%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Stock option exercises&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;124,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;96,908&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,126&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;74,907&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Purchases of common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(59)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(15,484)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(72)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(14,289)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(781)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(150,050)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Employee stock plan purchases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,051&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Restricted stock units vested, net of withheld shares upon award settlement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(12,923)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(5,361)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfStockholdersEquityTableTextBlock>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtMS0xLTEtMA_9547007c-9115-431b-9937-793c6b269640"
      unitRef="shares">1174000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtMy0xLTEtMA_65067b71-8a97-4ded-8b94-8523a82d5d69"
      unitRef="usd">124363000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtNS0xLTEtMA_e83ef0c8-fd31-4a00-9224-9cbb8b0d690d"
      unitRef="shares">999000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtNy0xLTEtMA_5bf62d29-4a30-4a99-89cb-e4f40d043d82"
      unitRef="usd">96908000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtOS0xLTEtMA_0ca6ea16-aac4-4758-a088-9b1862081ae2"
      unitRef="shares">1126000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzMtMTEtMS0xLTA_f32ef858-6f6b-4e2d-9bbe-2878fd8b9169"
      unitRef="usd">74907000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtMS0xLTEtMA_87cd9f14-1ae0-4287-a2e9-5c5a0f879732"
      unitRef="shares">59000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtMy0xLTEtMA_ae58d97a-6df6-4bc4-8f08-c4521a03730b"
      unitRef="usd">15484000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtNS0xLTEtMA_75e089b1-8b56-400e-8364-77040dc984bf"
      unitRef="shares">72000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtNy0xLTEtMA_b29ea2b5-559d-4340-88ec-b040ee07fd8e"
      unitRef="usd">14289000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtOS0xLTEtMA_6f1ef53f-5b96-43df-8bb3-219dd220fbf7"
      unitRef="shares">781000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzQtMTEtMS0xLTA_96b6a96b-b6b6-4274-b51f-585e20e2da23"
      unitRef="usd">150050000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtMS0xLTEtMA_bd1cb4a8-95e5-4059-8d5b-e2cb11c3ba18"
      unitRef="shares">40000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtMy0xLTEtMA_46e17931-9e96-4771-98b7-3219b8f722f8"
      unitRef="usd">10912000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtNS0xLTEtMA_a6da1327-31bf-475f-9a03-49b98868ba18"
      unitRef="shares">53000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtNy0xLTEtMA_94d95152-d75f-492e-886d-3e2b088862ec"
      unitRef="usd">9576000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtOS0xLTEtMA_0332910d-1c69-4d92-aaeb-fe726511cbc7"
      unitRef="shares">45000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzUtMTEtMS0xLTA_9e1f89ac-2956-47b2-8952-ffd74ce56dd6"
      unitRef="usd">8051000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtMS0xLTEtMA_ab0281f7-f5c7-4d11-bbc0-2988d1cc0479"
      unitRef="shares">76000</tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement>
    <tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtMy0xLTEtMA_f0b88b51-1f2b-49cd-9968-2788cd47ae79"
      unitRef="usd">-12923000</tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement>
    <tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtNS0xLTEtMA_0b8056f1-ab12-4e5f-9187-c2b5a93dc3e3"
      unitRef="shares">53000</tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement>
    <tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtNy0xLTEtMA_6c67971f-ae37-48b9-bee4-ca58ae101317"
      unitRef="usd">-5361000</tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="ib46339af77fa4dddbd9e3b29b8732aee_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtNy0xLTEtMA_83e9391c-9187-4b3c-99a3-fc89bffb7079"
      unitRef="usd">5361000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtOS0xLTEtMA_e3ce2b0e-c3a3-43fa-a3d4-42e390d1e127"
      unitRef="shares">0</tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement>
    <tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90YWJsZTplZDczYjBjY2U4NmM0NGRjYmQ2ZDRjMmVmYWM3NWZiYy90YWJsZXJhbmdlOmVkNzNiMGNjZTg2YzQ0ZGNiZDZkNGMyZWZhYzc1ZmJjXzYtMTEtMS0xLTA_ea4b6eb1-7f2c-43f4-9f84-9391d0ed3bff"
      unitRef="usd">0</tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement>
    <us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
      contextRef="i1cfd0b0d8fbd448d89aa47c9ae3b2209_I20210219"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNDgvZnJhZzplYWNiMTI2NDk0NTM0NTRmYmFkODMyZTIwZTcyMDQ4Yi90ZXh0cmVnaW9uOmVhY2IxMjY0OTQ1MzQ1NGZiYWQ4MzJlMjBlNzIwNDhiXzE2Ng_4b957ed3-2e06-4ecf-b948-65eaa56c9f45"
      unitRef="shares">2500000</us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ4MDQ_aeafcdf1-d914-428c-b428-d18707dd9748">SHARE-BASED COMPENSATION&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Share-Based Compensation Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During fiscal year&#160;2020, 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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzgwMw_9c8021d3-ecd5-465d-842a-27ecc42ff8e3"&gt;three&lt;/span&gt; to six years of continuous service from the date of grant and have a contractual term of&#160;10 years. 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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzEwOTA_687d0a58-f81d-42cd-a498-8c22c9cbf84c"&gt;three&lt;/span&gt; to five years 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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Stock Compensation&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, there were 2.5 million shares available for future grants under the plan from the 22.9 million shares previously approved by the shareholders.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Determining Fair Value of Stock Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 zero in the Black-Scholes option valuation model.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following weighted average assumptions were used for options granted:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Expected life (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Expected volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;27.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;26.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;26.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;0.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Expected forfeiture rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Share-Based Award Activity&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes restricted stock unit and performance stock unit activity during fiscal year 2020 (shares in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:56.944%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:57.436%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.019%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.412%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.019%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.414%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Number of Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted Average Grant Date Fair Value per Share&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unvested at January 1, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;221.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;241.19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(76)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;221.15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(14)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;229.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unvested at December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;231.57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;204&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;379.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(110)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;232.59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;266.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unvested at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;587&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;282.45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Options granted, exercised, forfeited and expired are summarized as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.307%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.030%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Number of&lt;br/&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;Average Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual Life&lt;br/&gt;(Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2017&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,817&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;107.91&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;208.21&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,126)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;66.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(31)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;158.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2018&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;129.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;162&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;251.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(999)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;96.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(29)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;174.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;145.27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;128&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;403.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,174)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;105.97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;165.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;181.63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;554,709&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Exercisable at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;155.06&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;400,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We had unvested options to purchase approximately 752,000 shares with a weighted average grant date exercise price of $231.93 as of December&#160;31, 2020, and unvested options to purchase approximately 1.2 million shares with a weighted average grant date exercise price of $188.48 as of December&#160;31, 2019. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average grant-date fair value of stock options granted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;98.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;74.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;66.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total intrinsic value of stock options exercised&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;292,394&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;155,899&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;176,716&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Share-Based Compensation Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Cost of subscriptions, software services and maintenance  &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,002&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;49,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;44,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;39,152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total share-based compensation expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;67,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;59,967&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;52,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Excess tax benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(60,190)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(29,819)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(32,487)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net decrease in net income&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;30,148&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;20,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, we had $164.0 million 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 3.12 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Employee Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under our Employee Stock Purchase Plan (&#x201c;ESPP&#x201d;) participants may contribute up to 15% of their annual compensation to purchase common shares of Tyler. The purchase price of the shares is equal to 85% of the closing price of Tyler shares on the last day of each quarterly offering period. As of December&#160;31, 2020, there were 664,000 shares available for future issuances under the ESPP from the 2.0 million shares previously approved by the stockholders.&lt;/span&gt;&lt;/div&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzgwOQ_669d1c4c-02bb-4d6a-aa93-d0283d27d8e2">P6Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzg4OA_1c37eedc-4c44-4edd-88bf-c1a8efc0e626">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i5583ee35a5ab41ebaa53632a5c580575_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzEwOTY_ee2f8db4-ac02-447b-88d0-aa735fe25301">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <tyl:ShareBasedCompensationShareConversionRateShares
      contextRef="ibf0996191f544a47aa3252f3c6b8abfa_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzI3NDg3NzkwNzQzMTE_45f99126-6a3b-4181-b7ec-d593dd4b151e"
      unitRef="shares">1</tyl:ShareBasedCompensationShareConversionRateShares>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzE0Nzk_b6597e19-0ee2-4cb5-b11f-b7443251f539"
      unitRef="shares">2500000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzE1NDE_28a9a6c1-2af9-485b-914a-c7c278cd494b"
      unitRef="shares">22900000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzMwNDA_bf248f7b-b394-4306-90da-5b5b1a0f7a56"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ4MTE_f2697d28-58ae-4e8e-9311-b55d102b4ff6">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following weighted average assumptions were used for options granted:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Expected life (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Expected volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;27.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;26.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;26.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;0.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Expected forfeiture rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzItMS0xLTEtMA_beccf8a8-56b1-4363-802a-1f9e6e50df3c">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzItMy0xLTEtMA_d67636ad-3209-4c90-91e6-be575d9f0965">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzItNS0xLTEtMA_da37cd0d-0ec2-4798-9a7a-5eefe6b49a3d">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzMtMS0xLTEtMA_6e6f2e97-bbd0-4960-b203-ff35ebe9db8f"
      unitRef="number">0.270</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzMtMy0xLTEtMA_ce0d3d46-5966-46b0-82c6-dd81ad54b6d3"
      unitRef="number">0.266</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzMtNS0xLTEtMA_5e3e3ec9-5421-4e12-b5ca-c001fbac17b9"
      unitRef="number">0.267</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzQtMS0xLTEtMA_86c9ec13-3368-4547-a055-043d8a4cfb17"
      unitRef="number">0.004</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzQtMy0xLTEtMA_b858195d-3942-43d9-9faa-bdf6e8ac6f21"
      unitRef="number">0.018</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzQtNS0xLTEtMA_349a0287-bf6e-42c9-a855-39ef8c15c828"
      unitRef="number">0.027</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate
      contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzUtMS0xLTEtMA_90815c5e-8b12-4716-aab6-97b1c48d2080"
      unitRef="number">0</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate
      contextRef="ia74881643a7d4c1dadfe49198c8972de_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzUtMy0xLTEtMA_f8c414a6-82b7-495a-aa71-cf19e2f5022a"
      unitRef="number">0</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate
      contextRef="i85b4dcccc5654c53b3d99615d97e2fd9_D20180101-20181231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo2M2ZmNDUyZWIzNTk0NjhmYTA3NDAyMjcxNGU1ZWIwMC90YWJsZXJhbmdlOjYzZmY0NTJlYjM1OTQ2OGZhMDc0MDIyNzE0ZTVlYjAwXzUtNS0xLTEtMA_85ff137a-e5fe-46b4-8ab3-2fff06c73cfc"
      unitRef="number">0</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate>
    <us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ4MDY_80a4441d-a0c1-4bfe-a795-a2df5cf0f38b">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes restricted stock unit and performance stock unit activity during fiscal year 2020 (shares in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:56.944%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:57.436%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.019%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.412%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.019%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.414%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Number of Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted Average Grant Date Fair Value per Share&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unvested at January 1, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;221.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;241.19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(76)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;221.15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(14)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;229.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unvested at December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;231.57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;204&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;379.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(110)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;232.59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;266.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unvested at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;587&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;282.45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i3fba9c501ecb48488641149b3f3174c2_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzEtMi0xLTEtMA_0435d918-da3e-42d6-aa54-cce7609b76b5"
      unitRef="shares">334000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="i3fba9c501ecb48488641149b3f3174c2_I20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzEtNC0xLTEtMA_21879004-620e-4e7f-afba-8f750eacbb6a"
      unitRef="usdPerShare">221.25</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzItMi0xLTEtMA_2a144fab-70f4-43b1-ae6f-f39f8a58872c"
      unitRef="shares">256000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue
      contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzItNC0xLTEtMA_0646e31a-bda0-4970-bcbd-34b737903ac4"
      unitRef="usdPerShare">241.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzMtMi0xLTEtMA_78c7c26d-7a71-4e7e-b489-f7055f89fb3e"
      unitRef="shares">76000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue
      contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzMtNC0xLTEtMA_5413d667-ee8e-4836-8363-5b8fd069fcdc"
      unitRef="usdPerShare">221.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzQtMi0xLTEtMA_280944e3-d1a3-4647-ba88-4d75bd85aff0"
      unitRef="shares">14000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue
      contextRef="ib801c7b163574890acb376ac54f7efe3_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzQtNC0xLTEtMA_01698ef1-a8b1-4d57-b775-c555ef5cb364"
      unitRef="usdPerShare">229.75</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i8dfa0f180b1e4b7ebdd34ac1961839d2_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzUtMi0xLTEtMA_3546b520-c7c4-4215-9b9e-c7f4e9b853d3"
      unitRef="shares">500000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="i8dfa0f180b1e4b7ebdd34ac1961839d2_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzUtNC0xLTEtMA_f59c38f3-3e70-4ada-82f1-27b103bfd2e9"
      unitRef="usdPerShare">231.57</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzYtMi0xLTEtMA_b6301376-2b78-4f09-97d2-817f425f2abb"
      unitRef="shares">204000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue
      contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzYtNC0xLTEtMA_aedd6131-0b3d-460c-a9bc-43f1652b6625"
      unitRef="usdPerShare">379.94</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzctMi0xLTEtMA_5e68b9ed-f56d-4098-a3f0-631706b27c76"
      unitRef="shares">110000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue
      contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzctNC0xLTEtMA_2d755588-ea35-4675-9109-1cecdab6bff1"
      unitRef="usdPerShare">232.59</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzgtMi0xLTEtMA_a208ccfe-c2e8-4017-8bf3-0f53a063724f"
      unitRef="shares">7000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue
      contextRef="id1f69dc2449b46dbb2f7749ad28efddd_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzgtNC0xLTEtMA_5dc4a5c1-0196-4fc2-b324-450ef5d64dbc"
      unitRef="usdPerShare">266.94</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i39a267385f494dce9f4725b6addbb80c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzktMi0xLTEtMA_4254870a-0db8-4b80-9062-3a2aba2d36cc"
      unitRef="shares">587000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="i39a267385f494dce9f4725b6addbb80c_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpjMDI0MmIwYjAzNjc0OTg4ODEzMjI1MzBhN2Q1Zjc3Yi90YWJsZXJhbmdlOmMwMjQyYjBiMDM2NzQ5ODg4MTMyMjUzMGE3ZDVmNzdiXzktNC0xLTEtMA_b0405a58-1e3a-4f22-bc57-48895c2f2a79"
      unitRef="usdPerShare">282.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ4MDI_f0cfb4d5-9b57-4100-83f0-01329a68d5ab">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Options granted, exercised, forfeited and expired are summarized as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.307%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.030%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Number of&lt;br/&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;Average Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual Life&lt;br/&gt;(Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2017&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,817&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;107.91&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;208.21&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,126)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;66.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(31)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;158.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2018&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;129.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;162&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;251.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(999)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;96.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(29)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;174.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;145.27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;128&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;403.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,174)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;105.97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(3)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;165.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;181.63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;554,709&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Exercisable at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;155.06&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;400,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average grant-date fair value of stock options granted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;98.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;74.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;66.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total intrinsic value of stock options exercised&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;292,394&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;155,899&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;176,716&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEtMS0xLTEtMA_20db2dd1-281f-4c46-ba1c-0fc94c38a40f"
      unitRef="shares">4817000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="iaec3f46826db4f818ca92b920242ca81_I20171231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEtMy0xLTEtMA_14407390-8448-4ead-8da9-075f3d564a1f"
      unitRef="usdPerShare">107.91</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzItMS0xLTEtMA_62491fa6-11ad-4ba2-beff-691bef6cbc42"
      unitRef="shares">432000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzItMy0xLTEtMA_e51dc0e3-cded-4966-89fb-766cb256fca9"
      unitRef="usdPerShare">208.21</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzMtMS0xLTEtMA_bba0cf9a-465f-4657-832a-5378a9e92409"
      unitRef="shares">1126000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzMtMy0xLTEtMA_d69013f4-128a-423f-9bed-b747e5154b85"
      unitRef="usdPerShare">66.53</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzQtMS0xLTEtMA_0d5f89bc-80c4-43e9-8ae4-023d71b3ac7b"
      unitRef="shares">31000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzQtMy0xLTEtMA_1ed89aea-a725-460c-a931-48e3cc481770"
      unitRef="usdPerShare">158.80</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzUtMS0xLTEtMA_4dc88499-d161-45f2-ae1b-b1c466347e8c"
      unitRef="shares">4092000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzUtMy0xLTEtMA_3c210c7f-953c-44ba-8959-c21c7b23e7e9"
      unitRef="usdPerShare">129.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzYtMS0xLTEtMA_cfa7774e-196f-4c35-9c9a-7226b8adf1d2"
      unitRef="shares">162000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzYtMy0xLTEtMA_75eead97-13ac-4b4b-ab7e-4df64825b55b"
      unitRef="usdPerShare">251.58</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzctMS0xLTEtMA_31e3582c-8421-41b1-b530-93313f1686e5"
      unitRef="shares">999000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzctMy0xLTEtMA_017ea4f8-484a-4775-8970-2e667c1b9e8f"
      unitRef="usdPerShare">96.92</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzgtMS0xLTEtMA_170d03fb-4fa7-49a7-ac70-7182fccf4f06"
      unitRef="shares">29000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzgtMy0xLTEtMA_44e43c03-8673-47a6-8c7c-789131aeb956"
      unitRef="usdPerShare">174.54</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzktMS0xLTEtMA_9977b8f0-20c2-4950-992b-b2e244da0007"
      unitRef="shares">3226000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzktMy0xLTEtMA_ad2475b0-3384-4407-a646-0ca23f112486"
      unitRef="usdPerShare">145.27</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEwLTEtMS0xLTA_d3614715-0075-47b0-b201-8090c84b28c7"
      unitRef="shares">128000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEwLTMtMS0xLTA_e518f986-9ffb-42ec-afc8-71a84de07b90"
      unitRef="usdPerShare">403.99</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzExLTEtMS0xLTA_81e5e753-a741-490f-8337-e6c615cd8159"
      unitRef="shares">1174000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzExLTMtMS0xLTA_abe6979d-294f-4b82-b146-9aff7154f976"
      unitRef="usdPerShare">105.97</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEyLTEtMS0xLTA_e09d80f9-ef91-4617-b5b8-9fcdab0b288b"
      unitRef="shares">3000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEyLTMtMS0xLTA_0adae2d0-69b1-4c6d-983a-3ff9e88defc2"
      unitRef="usdPerShare">165.93</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEzLTEtMS0xLTA_1ce2a7ba-7ae7-4dbe-a0ab-e71791d7776a"
      unitRef="shares">2177000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEzLTMtMS0xLTA_388629ca-a572-481c-9451-ea9b0b2ac515"
      unitRef="usdPerShare">181.63</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEzLTUtMS0xLTA_9e82fcb2-a6d8-4cd1-a105-743674fc3bcc">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzEzLTctMS0xLTA_7669f36e-45a9-49e4-99dd-1a12dd129ea4"
      unitRef="usd">554709000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzE0LTEtMS0xLTA_08666df2-0d28-499c-9652-2819b90aeb48"
      unitRef="shares">1424000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzE0LTMtMS0xLTA_530fb33c-b514-4798-8205-0a80223aa67d"
      unitRef="usdPerShare">155.06</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzE0LTUtMS0xLTA_d524249d-439b-42ca-8f5a-05947e4e6d81">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpkZDJhMjBhYjBhNzA0NTIwYWMxZTZiNTgyYWE4ZGMwZS90YWJsZXJhbmdlOmRkMmEyMGFiMGE3MDQ1MjBhYzFlNmI1ODJhYThkYzBlXzE0LTctMS0xLTA_43a39f46-4fbb-4f7a-8532-1fbfb057a58e"
      unitRef="usd">400814000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="i8dd210d68c10475fad0a0a5e93af1528_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzM2MTU_683c63c8-ad23-4e0c-ac7d-de4f54e1ed4f"
      unitRef="shares">752000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzM2Nzg_6a1780f8-0c82-4ac2-92cd-d449b4ba660d"
      unitRef="usdPerShare">231.93</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="i665a8bb2781c470e99cb87839f7e5fbd_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzM3MjQ_db044388-0b1a-4e23-8697-a780a563ceee"
      unitRef="shares">1200000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzM3ODc_5194d80d-df26-4455-8401-1693b9451e50"
      unitRef="usdPerShare">188.48</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzEtMS0xLTEtMA_05172596-795b-4581-b6ec-5a7c9d3b6768"
      unitRef="usdPerShare">98.69</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzEtMy0xLTEtMA_b45ba9d2-5e97-4ea5-8f51-d14011e92f45"
      unitRef="usdPerShare">74.54</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzEtNS0xLTEtMA_6bb56796-725f-47fd-ba04-c58c3a046c9f"
      unitRef="usdPerShare">66.52</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzItMS0xLTEtMA_d895f7c6-7221-4cb2-b2ea-3c28d036d526"
      unitRef="usd">292394000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzItMy0xLTEtMA_aaee2d26-62ab-4f8f-9760-89775256d8ab"
      unitRef="usd">155899000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTo4Y2NhMWE0ZDNhOTY0MGJkYWU2MzcxMWQ2ZTcwZjBlNi90YWJsZXJhbmdlOjhjY2ExYTRkM2E5NjQwYmRhZTYzNzExZDZlNzBmMGU2XzItNS0xLTEtMA_3fa2ff54-7813-448e-8925-c2a71e3112c8"
      unitRef="usd">176716000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ3OTc_b2cdf4ff-ed6e-4b57-b396-03aba8d0f00c">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Cost of subscriptions, software services and maintenance  &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,002&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;49,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;44,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;39,152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total share-based compensation expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;67,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;59,967&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;52,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Excess tax benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(60,190)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(29,819)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(32,487)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net decrease in net income&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;30,148&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;20,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="iad6cf6f58e5a4d6f96b29477f21b456d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzItMS0xLTEtMA_eac92854-6968-4cfe-a329-64f1d47d5600"
      unitRef="usd">18125000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1712ccf082ef466cb02c343fc02b0b8f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzItMy0xLTEtMA_8dec8f5f-cd07-467c-ad5b-3aaac51423a7"
      unitRef="usd">15002000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i113b64d7c6ae4eae9c3aee682d8cecbb_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzItNS0xLTEtMA_64ac4e5f-5879-4cc4-8b6b-583368eaeb71"
      unitRef="usd">13588000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="if10d25a3227f4f4ab01ec8f05f15151e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzMtMS0xLTEtMA_f3012c8e-e610-4987-b4d5-9d1d7afce64b"
      unitRef="usd">49240000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ide28a19f9a5d487f854fce9ac2ba02aa_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzMtMy0xLTEtMA_df33559b-1d2b-4602-97d1-f89c2b54dfcb"
      unitRef="usd">44965000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="id54b568dfe07484db3ea078954dd5601_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzMtNS0xLTEtMA_4a0c825a-2480-4a98-a711-a187861146be"
      unitRef="usd">39152000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzQtMS0xLTEtMA_7f954618-fdad-4a08-9a90-a1399293cdc0"
      unitRef="usd">67365000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzQtMy0xLTEtMA_3fbc69b0-7173-4d77-900a-0e7c75457fa5"
      unitRef="usd">59967000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzQtNS0xLTEtMA_6a9b4e7c-01de-41e1-8517-b8267f4a9620"
      unitRef="usd">52740000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzUtMS0xLTEtMA_f56c8cbc-e58e-4f48-b829-447c5ccd479a"
      unitRef="usd">60190000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzUtMy0xLTEtMA_ad1326a8-1a82-4fa9-9c10-c4ce2b59a812"
      unitRef="usd">29819000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzUtNS0xLTEtMA_0da2905d-81d4-466f-b2cd-7bc93e877df8"
      unitRef="usd">32487000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzYtMS0xLTEtMA_145830e5-e929-45ad-9667-4cfad834f220"
      unitRef="usd">7175000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzYtMy0xLTEtMA_56a1041d-672a-4860-8f67-61cdfbbaf4aa"
      unitRef="usd">30148000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90YWJsZTpmYWEyNDM4MzkyY2I0NTljYTMwMjhjYzU3Y2I3M2NkZi90YWJsZXJhbmdlOmZhYTI0MzgzOTJjYjQ1OWNhMzAyOGNjNTdjYjczY2RmXzYtNS0xLTEtMA_b29d2c0d-a7c1-42c1-b479-e04f2e6c31ff"
      unitRef="usd">20253000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="i8dd210d68c10475fad0a0a5e93af1528_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQxMzA_8a189e6a-22ca-4f5d-b131-dcc82040f85e"
      unitRef="usd">164000000.0</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i25ccf350f2ce43c49cebeba2c7e24a66_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQzMzk_25931708-e726-4c6e-9b93-db96ff97e09c">P3Y1M13D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate
      contextRef="i0d6a00f13daa4cdeb46d5ab68209cdda_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ0NjA_de7cb119-c631-4d0f-906e-9cb2c52f8f0c"
      unitRef="number">0.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="ib51c378298584fa1a4eb53d795b5740a_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ1NzM_64f1bd0e-1669-421d-af8e-4dd3de1d524d"
      unitRef="number">0.85</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i0d6a00f13daa4cdeb46d5ab68209cdda_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ2ODU_f4db3957-afa3-456f-808e-faafa04a4ffb"
      unitRef="shares">664000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i0d6a00f13daa4cdeb46d5ab68209cdda_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzQ3NDQ_a29552c9-b6bb-4810-a7df-69ac82ab6f29"
      unitRef="shares">2000000.0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzM1OQ_6fb4c7c7-8d95-424e-8ce6-995add100a9b">EARNINGS PER SHARE&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic earnings and diluted earnings per share data were computed as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Numerator for basic and diluted earnings per share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;194,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;146,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;147,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Denominator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted-average basic common shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,035&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;38,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;38,445&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Assumed conversion of dilutive securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Share-based awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Denominator for diluted earnings per share&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&#160; - Adjusted weighted-average shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Earnings per common share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.84&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;Share-based awards representing the right to purchase common stock of 132,000 shares in 2020, 633,000 shares in 2019, and 888,000 shares in 2018 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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzM2NA_1d6b004e-c4f6-43ee-9824-a8baeaf5273a">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic earnings and diluted earnings per share data were computed as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.029%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Numerator for basic and diluted earnings per share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;194,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;146,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;147,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Denominator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted-average basic common shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,035&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;38,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;38,445&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Assumed conversion of dilutive securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Share-based awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Denominator for diluted earnings per share&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&#160; - Adjusted weighted-average shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Earnings per common share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.84&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzMtMS0xLTEtMA_b49eb374-ab8c-4662-93f4-5f98e21d71f4"
      unitRef="usd">194820000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzMtMy0xLTEtMA_32b282d9-a26e-4cea-b144-dbb6eaa5b43e"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzMtNS0xLTEtMA_18d4b489-c5ab-4b3f-84f9-8254bccac508"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzUtMS0xLTEtMA_b28f6af4-182f-4773-88ea-e810f3f1b62a"
      unitRef="shares">40035000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzUtMy0xLTEtMA_e12f7de4-6100-4b0d-b3ad-863a4cfe0b24"
      unitRef="shares">38640000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzUtNS0xLTEtMA_b437ddc3-0ff6-4078-b774-bf056a3f48d5"
      unitRef="shares">38445000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzctMS0xLTEtMA_d634be0f-20b1-493b-b33e-46177f29c329"
      unitRef="shares">1491000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzctMy0xLTEtMA_6da0c3c5-299d-48f3-bfbf-00c49865fa0c"
      unitRef="shares">1465000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzctNS0xLTEtMA_1b5fd074-4ec1-4120-9d40-dd0778a701b2"
      unitRef="shares">1678000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzgtMS0xLTEtMA_ea40e385-6d4b-4896-9300-09d0abbb42e7"
      unitRef="shares">41526000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzgtMy0xLTEtMA_3fa8d389-6255-483d-8e62-6bbba090bbc8"
      unitRef="shares">40105000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzgtNS0xLTEtMA_0b33cdee-6ed2-4cc6-91ce-c1a3b62c78b0"
      unitRef="shares">40123000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzEwLTEtMS0xLTA_5fc6449d-d289-46d1-871c-50bcc0083c26"
      unitRef="usdPerShare">4.87</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzEwLTMtMS0xLTA_239c3fbb-4965-416c-8d3a-7b8275fdcd05"
      unitRef="usdPerShare">3.79</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzEwLTUtMS0xLTA_4a2e1996-bdbc-4a3b-9874-3d631c85f45f"
      unitRef="usdPerShare">3.84</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzExLTEtMS0xLTA_ed5ffae8-b414-4c52-93f5-54ef8d99fc58"
      unitRef="usdPerShare">4.69</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzExLTMtMS0xLTA_09acf92f-a924-4912-b388-500c4b816bd0"
      unitRef="usdPerShare">3.65</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90YWJsZTowMTE3NWM4ZmQyZTg0ZGVjYmYxOGY2NTI1NjQxNzNmMS90YWJsZXJhbmdlOjAxMTc1YzhmZDJlODRkZWNiZjE4ZjY1MjU2NDE3M2YxXzExLTUtMS0xLTA_8506b1a0-8e04-450f-a7c4-fed0009b4479"
      unitRef="usdPerShare">3.68</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzE3NA_363ef28a-a5b3-4ab2-a44f-c763b13071a0"
      unitRef="shares">132000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzE5MQ_7a6a5bb8-edbf-48ac-93c8-96cb6ee41ee8"
      unitRef="shares">633000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTQvZnJhZzo1M2NiYmQ3ZDlhM2Q0ZWRhYjhlMjY2NDhjZDE5OTdiZi90ZXh0cmVnaW9uOjUzY2JiZDdkOWEzZDRlZGFiOGUyNjY0OGNkMTk5N2JmXzIxMg_a177efd4-8bab-414e-aebe-b7a1db1ad30c"
      unitRef="shares">888000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTA_22979903-f9b1-497f-bf01-37813928cded">LEASES&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 one year to seven years.&#160;Some of these leases include options to extend for up to 10 years. We had&#160;no finance leases and no related party lease agreements as of December&#160;31, 2020. Operating lease costs were approximately $10.2 million in 2020, $9.9 million in 2019, and $7.4 million in 2018. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of operating lease expense were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:83.750%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.629%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.017%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.629%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.649%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.463%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.652%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Lease Costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Financial Statement Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Short-term lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Variable lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December 31, 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="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:75.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.344%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.725%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.281%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.976%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,992&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases, short-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases, long-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,209&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental information related to leases was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.739%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.651%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.787%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.333%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other Information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Cash Flows &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Cash paid amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Lease Term and Discount Rate:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of&#160;December&#160;31, 2020, maturities of lease liabilities were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:66.111%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.328%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.270%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Year ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,766&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Less: Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,583)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Present value of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Rental Income from third parties&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 2021 and 2025, some of which have options to extend the lease for up to&#160;five years. 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="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Rental income from third-party tenants was $1.1 million in 2020, $1.1 million in 2019, and $1.2 million in 2018. 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="margin-bottom:5pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:72.083%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.410%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.148%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:32.042%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Year ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,372&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, 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="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNjI_fee73c7c-a80c-4855-9a17-32a53d4d0944">LEASES&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 one year to seven years.&#160;Some of these leases include options to extend for up to 10 years. We had&#160;no finance leases and no related party lease agreements as of December&#160;31, 2020. Operating lease costs were approximately $10.2 million in 2020, $9.9 million in 2019, and $7.4 million in 2018. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of operating lease expense were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:83.750%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.629%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.017%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.629%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.649%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.463%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.652%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Lease Costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Financial Statement Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Short-term lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Variable lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December 31, 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="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:75.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.344%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.725%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.281%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.976%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,992&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases, short-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases, long-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,209&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental information related to leases was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.739%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.651%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.787%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.333%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other Information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Cash Flows &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Cash paid amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Lease Term and Discount Rate:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of&#160;December&#160;31, 2020, maturities of lease liabilities were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:66.111%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.328%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.270%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Year ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,766&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Less: Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,583)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Present value of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Rental Income from third parties&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 2021 and 2025, some of which have options to extend the lease for up to&#160;five years. 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="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Rental income from third-party tenants was $1.1 million in 2020, $1.1 million in 2019, and $1.2 million in 2018. 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="margin-bottom:5pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:72.083%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.410%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.148%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:32.042%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Year ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,372&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2020, 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="id6b415396bb841e79c9345d0e3300d97_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwMw_8462a519-10d4-4a9e-9c6f-db3e498de919">P1Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="ia7cf9706ae3c466d8639d30b1f7b428c_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwOQ_ea091c83-31ae-4d97-969f-2e7029b6a7d6">P7Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzI3MA_c58d98eb-bc03-4ca8-9acf-380151a2a24d">P10Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:LeaseCost
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzM4OA_6b13f5c1-eb8d-4371-bb9e-6b9ab6a1c46b"
      unitRef="usd">10200000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzM5OA_792da538-c804-4452-b3dc-70bffa1d9944"
      unitRef="usd">9900000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzQxMg_1d2ab632-9522-4414-962d-0a5858544a41"
      unitRef="usd">7400000</us-gaap:LeaseCost>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTc_589d3d85-4b38-4a31-ba82-97fa15592efb">&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of operating lease expense were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:83.750%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.629%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.017%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.629%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.649%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.463%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.652%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Lease Costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Financial Statement Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Short-term lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Variable lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental information related to leases was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.739%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.651%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.787%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.333%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other Information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Cash Flows &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Cash paid amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Lease Term and Discount Rate:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzItNC0xLTEtMA_b62cffa9-c071-471d-8e1a-a1a446fd4006"
      unitRef="usd">6524000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzItNi0xLTEtODQ_834b699c-9eee-449e-9630-4c08a1b08f75"
      unitRef="usd">6379000</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzMtNC0xLTEtMA_41bc5b43-fa99-4bef-853a-790d91adf9b3"
      unitRef="usd">1940000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzMtNi0xLTEtODQ_0bfebc56-59ac-4bc6-93fe-8443842983a4"
      unitRef="usd">2269000</us-gaap:ShortTermLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzQtNC0xLTEtMA_ca04c76e-696d-4ce3-9baf-3af1a92b0a63"
      unitRef="usd">1760000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzQtNi0xLTEtODQ_27ed1e3d-41f7-480d-bc09-071d3bfd3c96"
      unitRef="usd">1274000</us-gaap:VariableLeaseCost>
    <us-gaap:LeaseCost
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzUtNC0xLTEtMA_2fee5a68-b3f5-48ac-a7c3-8cd046731b68"
      unitRef="usd">10224000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo0YTRkMDVjYTdhMTA0ZGE5ODQxODIxM2M0OGViNGU4Yi90YWJsZXJhbmdlOjRhNGQwNWNhN2ExMDRkYTk4NDE4MjEzYzQ4ZWI0ZThiXzUtNi0xLTEtNDM3_028d862f-f162-4524-9bee-4b7844ba4461"
      unitRef="usd">9922000</us-gaap:LeaseCost>
    <tyl:ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTE_6d8885f2-6007-4000-8b69-818bea7989cb">&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December 31, 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="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:75.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.344%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.725%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.281%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.976%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,992&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases, short-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases, long-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,209&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</tyl:ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzItMi0xLTEtMA_f70c49f0-117a-46ad-89d1-13b62b58f8ad"
      unitRef="usd">18734000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzItNC0xLTEtMTAy_bb27bac8-4821-4b60-b224-9d73f0d2864d"
      unitRef="usd">18992000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzQtMi0xLTEtMA_5d1ca95b-b3e4-49a9-a1c3-2c5a1bc57c3f"
      unitRef="usd">5904000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzQtNC0xLTEtMTA2_79b01cad-68bf-451a-8377-13c461311a88"
      unitRef="usd">6387000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzUtMi0xLTEtMA_17b4111b-3bbf-4b96-99c4-7bc31c9d5977"
      unitRef="usd">16279000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzUtNC0xLTEtMTEx_77edca29-cb2a-4e81-ba28-5bbf9193507a"
      unitRef="usd">16822000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzYtMi0xLTEtMA_eb7de4c3-1cc8-41fe-85af-ade2bbdeff67"
      unitRef="usd">22183000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTo4MzYwODQ2ODI2NzA0MTc1YmRlZGEyOTAzZDY1YmQ0NS90YWJsZXJhbmdlOjgzNjA4NDY4MjY3MDQxNzViZGVkYTI5MDNkNjViZDQ1XzYtNC0xLTEtNDM5_eee4c579-4b17-4025-8318-5ca425faba56"
      unitRef="usd">23209000</us-gaap:OperatingLeaseLiability>
    <tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTI_97f66c22-6ba2-467c-8e22-0a2ded773f81">&lt;div style="margin-bottom:9pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental information related to leases was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.739%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.651%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.787%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.333%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other Information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Cash Flows &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Cash paid amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline"&gt;Lease Term and Discount Rate:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Weighted average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzQtMi0xLTEtMA_457fc853-a089-4f4c-998e-8688e948c974"
      unitRef="usd">8131000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzQtNC0xLTEtMTM5_9fe38c0d-bab5-430c-aa4a-0dbf81bbd861"
      unitRef="usd">7267000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzctMi0xLTEtMA_cd469bf2-5795-45ce-9828-ea7019f795f0"
      unitRef="usd">5524000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzctNC0xLTEtMTQx_21f79159-1a4d-458b-a1f0-7802051d61ed"
      unitRef="usd">3466000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzEwLTItMS0xLTA_d93b76ad-788a-4956-aff1-2dbd967d6ede">P3Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzEwLTQtMS0xLTE0NA_869b9078-44a1-4e99-9262-78d480b183f5">P4Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzExLTItMS0xLTA_1ce548d9-776e-41c5-8761-9a3ee6d59da2"
      unitRef="number">0.0328</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpiMGViNGMwNTBiMjA0MDk0ODE5ZDdlZGRhMjA5YjFmMS90YWJsZXJhbmdlOmIwZWI0YzA1MGIyMDQwOTQ4MTlkN2VkZGEyMDliMWYxXzExLTQtMS0xLTE0OA_57e9a709-7170-4ef2-be7d-3dfdec376477"
      unitRef="number">0.0400</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNTM_770c5405-9fbb-4115-a6b4-ce0350216868">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of&#160;December&#160;31, 2020, maturities of lease liabilities were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:66.111%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.328%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.270%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Year ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;7,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,766&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Less: Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,583)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Present value of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzEtMi0xLTEtMA_bad866ed-e5a1-479a-88c3-d3b18bef338a"
      unitRef="usd">7015000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzItMi0xLTEtMA_9840eaf9-aa9d-4fd9-97af-29bacf7bb13a"
      unitRef="usd">4853000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzMtMi0xLTEtMA_8638298f-4f1c-4202-a434-cf94a182e539"
      unitRef="usd">3826000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzQtMi0xLTEtMA_b4ac4f55-0b36-44f9-9c66-92920bf2d564"
      unitRef="usd">3337000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzUtMi0xLTEtMA_ee408aa8-389a-4c06-9865-3754c3e675e9"
      unitRef="usd">2198000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-1"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzYtMi0xLTEtMA_42438d6e-1331-4eea-a4d8-2f9b588e8b70"
      unitRef="usd">2537000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzctMi0xLTEtMA_daa4e6ea-054b-4fba-8df4-4541aaf0afc2"
      unitRef="usd">23766000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzgtMi0xLTEtMA_fe42c36f-b630-4f10-aaba-bf4cedebb357"
      unitRef="usd">1583000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTpjNDgyZTQ2M2NlNzg0NzZmYmU0NTIzYzdiN2M3OGRiOC90YWJsZXJhbmdlOmM0ODJlNDYzY2U3ODQ3NmZiZTQ1MjNjN2I3Yzc4ZGI4XzktMi0xLTEtMA_2e1a065a-4e69-4133-845e-952c230b04d1"
      unitRef="usd">22183000</us-gaap:OperatingLeaseLiability>
    <us-gaap:LessorOperatingLeaseRenewalTerm
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzE1MzI_f51f2f3c-df93-4467-bf22-c2243ef45353">P5Y</us-gaap:LessorOperatingLeaseRenewalTerm>
    <us-gaap:RentalIncomeNonoperating
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzE3MDE_b544e119-5e14-4b4e-b72f-ef958f23266e"
      unitRef="usd">1100000</us-gaap:RentalIncomeNonoperating>
    <us-gaap:RentalIncomeNonoperating
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzE3MTE_f3b58ac7-18c3-4f1a-88c6-8d1975f89f61"
      unitRef="usd">1100000</us-gaap:RentalIncomeNonoperating>
    <us-gaap:RentalIncomeNonoperating
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzE3MjU_8b0a13d2-07dd-4b96-b3e2-c9a12e9512e6"
      unitRef="usd">1200000</us-gaap:RentalIncomeNonoperating>
    <us-gaap:OperatingLeaseLeaseIncomeTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90ZXh0cmVnaW9uOmE3OTE1YjU4OTkwZTQwNjc4YTM4ZGZlMzkyMGNjZGQ0XzIwNjQ_d95edf09-459e-463f-abbb-9a97948d687d">Future minimum operating rental income based on contractual agreements is as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:72.083%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.410%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.148%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:32.042%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Year ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,372&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:OperatingLeaseLeaseIncomeTableTextBlock>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzEtMi0xLTEtMA_160496f7-8088-4cb2-906f-3aa4d51a69d3"
      unitRef="usd">1372000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedTwoYears
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzItMi0xLTEtMA_8051036d-d82c-46b1-8c08-df9af437b5e5"
      unitRef="usd">1402000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedTwoYears>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedThreeYears
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzMtMi0xLTEtMA_595ecee2-27f7-4776-9db8-288afec105a3"
      unitRef="usd">1432000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedThreeYears>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedFourYears
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzQtMi0xLTEtMA_39021e2c-2939-4ae5-8609-663480b98c28"
      unitRef="usd">1462000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedFourYears>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedFiveYears
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzUtMi0xLTEtMA_57c74d22-48db-4c46-b306-7ca426aa530a"
      unitRef="usd">858000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedFiveYears>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedThereafter
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzYtMi0xLTEtMA_eecdd55e-1ab2-42fe-a227-1de0b5a2a386"
      unitRef="usd">0</us-gaap:LessorOperatingLeasePaymentsToBeReceivedThereafter>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceived
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTcvZnJhZzphNzkxNWI1ODk5MGU0MDY3OGEzOGRmZTM5MjBjY2RkNC90YWJsZTowZGZjYTllOTFmOGU0MzAxODg2ODlmMjhjZGMxZjM0OS90YWJsZXJhbmdlOjBkZmNhOWU5MWY4ZTQzMDE4ODY4OWYyOGNkYzFmMzQ5XzctMi0xLTEtMA_59bfaa61-e4cd-48fc-ac0c-bdbad42846f4"
      unitRef="usd">6526000</us-gaap:LessorOperatingLeasePaymentsToBeReceived>
    <us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzQ0Mw_b7a81796-cabd-40d2-95c4-edaa137a79dd">EMPLOYEE BENEFIT PLANSWe provide a defined contribution plan for the majority of our employees meeting minimum service requirements. Eligible employees can contribute up to 30% of their current compensation to the plan subject to certain statutory limitations.&#160;We contribute up to a maximum of 3% of an employee&#x2019;s compensation to the plan.&#160;We made contributions to the plan and charged operating results $12.7 million in 2020, $11.5 million in 2019, and $9.3 million in 2018.</us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzE4MA_7d56973a-a823-4ffa-a9c6-84186891b5df"
      unitRef="number">0.30</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzMwMA_32a4f420-5fd2-4dc9-af8b-456d313ee9a2"
      unitRef="number">0.03</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzQxMA_e1b4f05f-3c21-4b85-9b13-d4f10cf1f5ce"
      unitRef="usd">12700000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzQyMA_e61dd6ba-73ce-4547-bb3a-38b582a64aa0"
      unitRef="usd">11500000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjAvZnJhZzpiZTI2YmFiYWM5NDk0MTM5YWY3NzBlZWI0MTg5NTQyNC90ZXh0cmVnaW9uOmJlMjZiYWJhYzk0OTQxMzlhZjc3MGVlYjQxODk1NDI0XzQzNA_e2a6c510-2c78-4c79-a70a-9267404fe71f"
      unitRef="usd">9300000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzIxMw_7e4794f6-1c22-4f58-8fba-6788d720b3f4">COMMITMENTS AND CONTINGENCIES&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Security Incident&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On September 29, 2020, we filed a Current Report on Form 8-K reporting a security incident (the "Incident") involving ransomware disrupting access to some of our internal IT systems and telephone systems. There is no evidence that the environments where we host client applications were affected, and our hosting services to those clients were not interrupted.  There is also no evidence of malicious activity on client networks associated with the Incident. We contained the Incident and recovered from it, resuming normal operations with our clients. We will continue to deploy supplemental remediation efforts as necessary. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As part of our immediate response to the Incident, we (1) shut down points of access to external systems and began investigating and remediating the problem; (2) engaged outside IT security and forensics experts to conduct a detailed review and help securely restore &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;affected systems; (3) implemented targeted monitoring systems to supplement the systems we already had in place; and (4) notified law enforcement. We have cooperated with their investigation throughout. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We promptly notified our clients of the Incident and provided timely updates to our clients through direct communications and updates to our website. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Although we believe we have contained and recovered from the Incident, and that we have taken and will continue to take appropriate remediation steps, we are subject to risk and uncertainties as a result of the Incident. We believe we are in the final phases of our investigation, but there can be no assurance as to what the ongoing impact of the Incident will be, if any. The Incident caused an interruption in parts of our business. We have made insurance claims for lost revenue related to the Incident, (primarily software services revenue) for the year ended December 31, 2020. Insurance reimbursements pertaining to lost revenue represent a contingent gain and any recovery of these revenues will be recorded when received. We do not expect such gains to be material. We incurred $4.2 million in costs associated with the Incident as of December&#160;31, 2020. As of&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; December 31, 2020, we have recorded &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$1.1 million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; of accrued insurance recoveries and received &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$2.4 million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; of insurance recoveries related to the Incident. The recorded costs consisted primarily of payments to third-party service providers and consultants, including legal fees, and enhancements to our cybersecurity measures.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; It is expected that we will continue to incur costs related to our response, remediation, and investigatory efforts relating to the Incident. We maintain cybersecurity insurance coverage in an amount that we believe is adequate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Litigation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <tyl:UnusualOrInfrequentItemOrBothExpenses
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzIxOTkwMjMyNjA0MzQ_10681622-579a-495c-a622-0814d009b0ec"
      unitRef="usd">4200000</tyl:UnusualOrInfrequentItemOrBothExpenses>
    <us-gaap:AccruedInsuranceCurrentAndNoncurrent
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzIxOTkwMjMyNjA1Mjk_2f328a3b-255e-4099-93c5-2c161d279bf2"
      unitRef="usd">1100000</us-gaap:AccruedInsuranceCurrentAndNoncurrent>
    <us-gaap:InsuranceRecoveries
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzIxOTkwMjMyNjA1Nzg_0f49c106-78df-46b4-9be7-2fc28af1ed5d"
      unitRef="usd">2400000</us-gaap:InsuranceRecoveries>
    <tyl:NumberOfLegalProceedingsThatHaveMaterialEffect
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjMvZnJhZzpjZTUzYTYyYjI0ZjQ0NTZkODhiOGZhNzI4MTZkNzUxMS90ZXh0cmVnaW9uOmNlNTNhNjJiMjRmNDQ1NmQ4OGI4ZmE3MjgxNmQ3NTExXzEwNA_edae4c83-abc0-44b1-a299-2993bb008004"
      unitRef="legalmatters">0</tyl:NumberOfLegalProceedingsThatHaveMaterialEffect>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM4ODQ_e913a56b-af06-4ebf-b1d2-2b27dedca1c3">SEGMENT AND RELATED INFORMATION&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We provide our software systems and services and appraisal services through six business units, which focus on the following products:&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:56.25pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;financial management, education and planning, regulatory and maintenance software solutions;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:56.25pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:56.25pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;courts and justice and public safety software solutions; &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:56.25pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;data and insights solutions;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:56.25pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;platform technologies; and&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;padding-left:56.25pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;appraisal and tax software solutions and property appraisal services.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In accordance with ASC 280-10, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Segment Reporting&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, we report our results in two segments. 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 platform technologies solutions unit meet the criteria for aggregation and are presented in one 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 platform technologies 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, land and vital records management 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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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. Due to the shelter-in-place orders caused by the COVID-19 pandemic, we cancelled our company-wide user conference for the current year. 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="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;amp;T segments have been adjusted to reflect the segment change.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Segment assets primarily consist of net accounts receivable, prepaid expenses and other current assets and net property and equipment, and capitalized software development costs.&#160;Corporate assets primarily consist of cash and investments, prepaid insurance, intangibles associated with acquisitions, 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="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ES segment capital expenditures included $6.6 million in 2020 and $12.6 million in 2019 for the expansion of existing buildings and purchases of buildings and land.&#160;A&amp;amp;T segment capital expenditures included $3.3 million in 2020 and $8.2 million in 2019 for the expansion of existing buildings.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.307%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.030%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&lt;br/&gt; and Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;64,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,964&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;73,164&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;326,284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;24,364&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;350,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;164,520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,889&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;186,409&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;429,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;38,289&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;467,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,802&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,131)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,020,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;114,824&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,120)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,116,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;67,411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,055&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,191&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;81,657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;285,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;27,383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(86,104)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;226,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11,099&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,823&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,748&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;847,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;94,149&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,665,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,607,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.307%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.030%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&lt;br/&gt; and Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;90,808&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;100,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;279,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,070&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;296,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;179,865&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;33,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;213,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;393,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;36,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;430,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(15,496)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;975,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;120,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(9,240)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,086,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;64,245&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;970&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;76,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;255,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;26,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(73,829)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;208,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,283&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,436&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;38,098&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;833,203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;91,343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,267,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,191,614&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.307%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.030%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2018 &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&lt;br/&gt; and Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;81,299&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;12,142&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;93,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;205,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,354&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;220,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;161,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;29,657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;349,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;35,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;384,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;12,764&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(13,155)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;828,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;114,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(8,274)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;935,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;49,921&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;61,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;231,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;28,434&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(68,572)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,973&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;25,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;554,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;64,810&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,171,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,790,963&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:84.444%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.235%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.577%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.577%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.745%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Reconciliation of reportable segment operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;income to the Company's consolidated totals:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total segment operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;226,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;208,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortization of acquired software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(31,962)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(30,642)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(22,972)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortization of customer and trade name intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(21,662)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(21,445)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(16,217)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other income, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Income before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;175,042&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;159,838&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;155,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <tyl:NumberOfBusinessUnits
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzI0MA_49e222a2-6dc1-412b-9c31-9862b029a574"
      unitRef="business_unit">6</tyl:NumberOfBusinessUnits>
    <us-gaap:NumberOfReportableSegments
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzI3NDg3NzkwNzY2MjI_091030e3-c800-4e92-97d5-bfcc973224a3"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="ia6c80417eac74c82ae3468f659ce8266_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzEwOTk1MTE2MzIyMzM_9c3f5033-574f-4c5c-9688-03ae11e116b3"
      unitRef="usd">6600000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="ia255aed390eb4000a104450972e6ed3c_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM2OTA_bda55aaa-3d9a-41b5-b824-b9a9b2d2213b"
      unitRef="usd">12600000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="i5c8db9ebd8254d46a3fbfb6e3f34627f_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzIxOTkwMjMyNjAzNTM_2f08a08f-0475-4de3-a1dd-f844e7eb74a6"
      unitRef="usd">3300000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="i04d0fec5dca84d1c9852fff27dfb4f6f_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM4MTk_a6502b68-e7ad-4f78-9655-0b1d739a9f72"
      unitRef="usd">8200000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM4ODY_32d73dc7-8d4e-4a8f-94b3-bc53f75a044f">&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.307%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.030%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&lt;br/&gt; and Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;64,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,964&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;73,164&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;326,284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;24,364&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;350,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;164,520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,889&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;186,409&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;429,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;38,289&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;467,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,802&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,131)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,020,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;114,824&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,120)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,116,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;67,411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,055&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,191&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;81,657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;285,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;27,383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(86,104)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;226,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11,099&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,823&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,748&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;847,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;94,149&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,665,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,607,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.307%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.030%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&lt;br/&gt; and Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;90,808&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;100,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;279,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,070&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;296,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;179,865&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;33,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;213,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;393,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;36,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;430,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;16,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(15,496)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;975,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;120,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(9,240)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,086,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;64,245&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;970&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;76,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;255,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;26,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(73,829)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;208,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,283&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;8,436&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;38,098&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;833,203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;91,343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,267,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,191,614&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.307%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.026%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.030%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2018 &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&lt;br/&gt; and Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;81,299&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;12,142&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;93,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;205,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,354&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;220,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;161,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;29,657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;349,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;35,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;384,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;12,764&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(13,155)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;828,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;114,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(8,274)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;935,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;49,921&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;10,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;61,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;231,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;28,434&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(68,572)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;13,973&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;25,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Segment assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;554,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;64,810&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,171,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,790,963&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iaca354e3138d46858d4e955c8c20e471_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzItMS0xLTEtMA_c4b312fd-81d1-46a6-896e-e80ef8bf1103"
      unitRef="usd">64200000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id9d1322a873f47e0874e897492712721_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzItMy0xLTEtMA_493c0c14-bc94-4776-a9b7-4fc442e46243"
      unitRef="usd">8964000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6d22aa1df25346ffadaa95acb43364ae_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzItNS0xLTEtMA_69b78cc3-5057-47f6-98e1-4b0a5629bcf1"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2e91e63dcd724a48a90294c512bdd40c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzItNy0xLTEtMA_04e42305-b2a4-477f-a87e-f09c808ddb6c"
      unitRef="usd">73164000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia40303a553f9437bb075221df8e35cf7_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzMtMS0xLTEtMA_38f4a3af-5827-44f3-9a25-ab3819802b15"
      unitRef="usd">326284000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i374e0b74c71e440c87e9c6d9bb653e9b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzMtMy0xLTEtMA_347f2c6b-e410-4d40-bb2d-0502a56df30b"
      unitRef="usd">24364000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i727d890376f54ff8bd2ec913cded5d8b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzMtNS0xLTEtMA_ebcd817b-83cb-466e-9ba5-91522f5859bc"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia8322e4d56da4e2d95685db9396c9692_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzMtNy0xLTEtMA_5f6c16be-d5f6-4941-9416-84976d84b70f"
      unitRef="usd">350648000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5dba41f479d947b1bdcedc66802333e2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzQtMS0xLTEtMA_3cca6f6b-c80a-49ce-b80f-e36c8261f9f6"
      unitRef="usd">164520000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia5dcc53ef7064bc39ccdcf09f7c79001_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzQtMy0xLTEtMA_b030612e-4cc5-450d-850a-9b4931f684a9"
      unitRef="usd">21889000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0ea582e38b4e4ddc9c2381a870002d2c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzQtNS0xLTEtMA_eb160a44-1b34-4c5d-af95-467e700e45b7"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9cc233e615334f518f580b82bb14d73a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzQtNy0xLTEtMA_b07a6da3-5411-404e-b718-f50da8fe63ce"
      unitRef="usd">186409000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4c3f6ac328eb45f397df2d21867b655a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzUtMS0xLTEtMA_2768c6c0-fe29-4e43-b7c5-073e0547f077"
      unitRef="usd">429224000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i819fa787e3a94691994562b71e1a4dc0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzUtMy0xLTEtMA_dd32a293-933b-46e0-a00a-87a70e118cdb"
      unitRef="usd">38289000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8de5a13236e44faf95422dd421c2f236_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzUtNS0xLTEtMA_f702c7ff-e606-4da2-9c8e-219fb7e2b5a3"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i05e1622f629a4425913b1635df4a04e2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzUtNy0xLTEtMA_2a70a625-639a-4967-b82b-d2f6ff799ba2"
      unitRef="usd">467513000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6f6ebfcf46af4c81b9123d960fbeaa77_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzYtMS0xLTEtMA_2a797a1f-d7c0-4b5f-ae35-cd622053f480"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1392d5cf0be94679bffe21ecce0817c9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzYtMy0xLTEtMA_377f71d1-661c-4cc6-a108-f45887a7d035"
      unitRef="usd">21127000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i36c9cc8a647c4c7aa42a6200e89ce9fb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzYtNS0xLTEtMA_882e3fff-4bbb-40ed-8e43-36b6c99480d8"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1b3f1e3d428e4132927a753977386694_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzYtNy0xLTEtMA_fec9c5c8-5ef1-4a20-9ded-e5c49d47940c"
      unitRef="usd">21127000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i611ef8f3c31c46738e2b843bf6886bdd_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzctMS0xLTEtMA_f7a1c1ed-0571-466d-99d6-e73929aef7e4"
      unitRef="usd">17670000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if8e240b661ce4e0e883b743c3189fc7c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzctMy0xLTEtMA_f30375bf-3df7-4607-b1e2-f7deeaac95d8"
      unitRef="usd">121000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i72c1e7ba154e47779fc521e3c9800822_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzctNS0xLTEtMA_ae93f60e-508e-4c21-bc3c-868999f88ba3"
      unitRef="usd">11000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9a28a06f509941fe98fb7e7fc27c5600_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzctNy0xLTEtMA_a01ff3a5-6f94-4d80-ad74-5728131c0543"
      unitRef="usd">17802000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i605bb7a621c94f0a90ad78dcbc8e0b4b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzgtMS0xLTEtMA_934741c9-e484-4c98-a50a-776c06e61605"
      unitRef="usd">19061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i993fd2302c8f4b5d9203136c5c02e6e3_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzgtMy0xLTEtMA_575f509c-51fc-4ad2-9c03-460b395e3f1a"
      unitRef="usd">70000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i328eb1e00308488e8fe0cae2086cd019_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzgtNS0xLTEtMA_e289d770-a3ab-4e6d-b06d-172d4effd767"
      unitRef="usd">-19131000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzktMS0xLTEtMA_54f1c7ee-30f9-466d-a516-5ba678dc8cc1"
      unitRef="usd">1020959000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzktMy0xLTEtMA_a102e102-0fd2-45e0-a7f5-4848a42d9700"
      unitRef="usd">114824000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzktNS0xLTEtMA_af66898a-fd6e-41a8-9d5d-a65e4644010d"
      unitRef="usd">-19120000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzktNy0xLTEtMA_44e95d55-169a-49d3-ac51-c9ea210506d3"
      unitRef="usd">1116663000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEwLTEtMS0xLTA_959e7e50-8f65-4741-81b1-b309dfd28e81"
      unitRef="usd">67411000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEwLTMtMS0xLTA_fb4a8fe9-4abe-4902-b437-531f91d878a1"
      unitRef="usd">1055000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEwLTUtMS0xLTA_2e21204a-7fc8-4d99-89dc-d92dbb147300"
      unitRef="usd">13191000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEwLTctMS0xLTA_cdb1e7c5-e536-4513-9077-1429e76e2958"
      unitRef="usd">81657000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzExLTEtMS0xLTA_bdfe1f29-2edc-461d-b643-e937253d7c9a"
      unitRef="usd">285271000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzExLTMtMS0xLTA_80e9b768-b4ef-4183-898b-cb3fd3a4ef0e"
      unitRef="usd">27383000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzExLTUtMS0xLTA_af1ff6e4-d29e-4ae2-9d50-1049d0d2203a"
      unitRef="usd">-86104000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i20538c481f6b4f248bfa73e7e3b47cfc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzExLTctMS0xLTA_41be9b8c-c1f1-4027-b0ed-0525410108c2"
      unitRef="usd">226550000</us-gaap:OperatingIncomeLoss>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEyLTEtMS0xLTA_9516787b-ce33-496e-812b-cac25958a3e5"
      unitRef="usd">11099000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEyLTMtMS0xLTA_13e2dff0-49e7-4e47-96ed-bbe904c738ff"
      unitRef="usd">3823000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="i71bef19404bc4c26ab8e0577fbf5f46c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEyLTUtMS0xLTA_c3b5ac35-9069-410a-a4b7-7fe74c0a7e8c"
      unitRef="usd">6826000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEyLTctMS0xLTA_7d63c5d1-c99e-4542-a4a6-720450866c29"
      unitRef="usd">21748000</tyl:SegmentReportingInformationCapitalExpenditures>
    <us-gaap:Assets
      contextRef="i80940766fb8a4664b36c530c616fcd77_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEzLTEtMS0xLTA_fa6ddf1e-1a5c-4a25-baaf-ad0ce4c98852"
      unitRef="usd">847672000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ia427f4d34826408fa62a3e2007be5010_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEzLTMtMS0xLTA_3323c889-24af-4bbb-ba84-5e1e330c461a"
      unitRef="usd">94149000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i282eeaf0e8dd48b3a2ad2ded16faad06_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEzLTUtMS0xLTA_26b4c670-bff0-42ce-88e5-96341bddc72d"
      unitRef="usd">1665453000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZToxMDlkZWNkMzkxYjg0YmY4OWUzMzVjNjg0ZmZkY2M1NS90YWJsZXJhbmdlOjEwOWRlY2QzOTFiODRiZjg5ZTMzNWM2ODRmZmRjYzU1XzEzLTctMS0xLTA_8b219fa9-6853-4e73-b4a9-976693f6df50"
      unitRef="usd">2607274000</us-gaap:Assets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic4a81836cd1c43a2823dd81494bf1b5b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzItMS0xLTEtMA_5fd634f8-2515-483a-b9ea-b241663e8baa"
      unitRef="usd">90808000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i25443b45c9b54bb9a6c7e89b89f04be3_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzItMy0xLTEtMA_87dc5f39-1657-442e-b7f3-449268d99c6f"
      unitRef="usd">9397000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i21c91e321aeb4ad5a04e899cf0ceab93_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzItNS0xLTEtMA_3f998d6c-6431-4e01-a5ed-d366bb676df5"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i573d9d38aebc4dfdbedc8aab3002adfc_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzItNy0xLTEtMA_0392c481-bc48-459e-a02f-dc431313a441"
      unitRef="usd">100205000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie0ad6acaca964ed791bb6bf4fab5acbb_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzMtMS0xLTEtMA_96425a8b-2a86-492e-aa34-35cd91dc7604"
      unitRef="usd">279282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i59629cf15db348bb8dd675108c5f4040_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzMtMy0xLTEtMA_be186e94-18c2-46e9-9f45-e7797dab8603"
      unitRef="usd">17070000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ief24ed71c8ef43a69aa5c08f4529cb5f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzMtNS0xLTEtMA_2c40f844-6d0e-4da4-844d-5f245deb0d80"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ida4f226a38484bfba1d39a6cb3f09899_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzMtNy0xLTEtMA_bd6898e7-320e-41c4-b1ad-a6f645dbdf9a"
      unitRef="usd">296352000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if10392ccfe30424aa582db6c6025dc23_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzQtMS0xLTEtMA_f8a03e8a-f89a-4280-b031-4c7a6ac9bd5c"
      unitRef="usd">179865000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7b1f1b966cee4e208524d3bc0d4f3e66_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzQtMy0xLTEtMA_be01851b-3371-421b-8433-ce6acb99e7cb"
      unitRef="usd">33196000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2cfd1e23f0ab42e2ae01539b75218b9d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzQtNS0xLTEtMA_f0f729dc-54d2-4246-b99d-525e74c29e14"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5c7d1b68baf7406fa7740140cec4e452_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzQtNy0xLTEtMA_fee03ee9-dfde-466c-b6e1-88b8d0ba9b7c"
      unitRef="usd">213061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i61f524e60a524033b29ca0bda69c4415_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzUtMS0xLTEtMA_ff3d8093-2051-4a0a-9f0a-971a0a206761"
      unitRef="usd">393521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib3fc81cd23e74d7f9c4f9f6141480672_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzUtMy0xLTEtMA_7ad6e968-11cf-4757-9596-33a327d43b10"
      unitRef="usd">36797000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic7bdcddffd31491f88bd41ea6719ed4f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzUtNS0xLTEtMA_ebb6385e-619d-44df-80d8-1a3fd6a44533"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8d10cc1da94440e1b8af4178515524bd_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzUtNy0xLTEtMA_ef0ae6ca-6ac4-4f04-97a9-c7675bac79ca"
      unitRef="usd">430318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i20a02e4e03d94cf5bc97cc747e645e09_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzYtMS0xLTEtMA_75112dc8-5921-465f-94c5-41c0a2dc5fd1"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3ab6fdc4955541e7b06e731610bda272_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzYtMy0xLTEtMA_cb2a1742-ef3f-4ed4-9295-3b2bc299d9f0"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i98dd2e43677045b0a081fa69828920af_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzYtNS0xLTEtMA_8d7da857-0501-4ef8-b4bb-cf106c93b76b"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzYtNy0xLTEtMA_d72adadd-a3e2-4c8a-a3a9-34c01c498906"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i84af85d3584844cdaef25f135b52d82f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzctMS0xLTEtMA_05536b75-d2ee-4ba1-9a03-a6fdef7e3c56"
      unitRef="usd">16553000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i933b232be67e40f79aa7f187c9126518_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzctMy0xLTEtMA_32640949-6efe-4cd9-8b3c-bbb04b933be9"
      unitRef="usd">203000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5bb54982aaca4482a7035e7887214a6c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzctNS0xLTEtMA_835af1be-084e-4d41-9dab-2d27ab0caa3c"
      unitRef="usd">6256000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idb422f10382e4413ae24e0220d77db4f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzctNy0xLTEtMA_3748fc51-4d79-4948-bcd6-421ea1e76d9b"
      unitRef="usd">23012000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if3471d9417bd49cb8b685414796e6c4c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzgtMS0xLTEtMA_f790487e-d534-409d-bc79-409b59fb9b0c"
      unitRef="usd">15290000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i440f307e20524fe0833637af7678f996_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzgtMy0xLTEtMA_efc0862b-063d-4b43-a72c-32ac12825b7c"
      unitRef="usd">206000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i553e24a2da774e478754fc9c1e57a562_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzgtNS0xLTEtMA_0bd3aee4-b0f5-4e5c-b865-95d038a158b1"
      unitRef="usd">-15496000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzktMS0xLTEtMA_e01dfd5f-0995-48ea-8840-d1d51e5c231e"
      unitRef="usd">975319000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzktMy0xLTEtMA_15499a66-ec7a-4e56-8d6e-557f06201c46"
      unitRef="usd">120348000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzktNS0xLTEtMA_9d4fbb3e-d205-44f4-9303-83961d293590"
      unitRef="usd">-9240000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzktNy0xLTEtMA_51df2f5d-1da8-4fa9-ae62-2d11b48276cb"
      unitRef="usd">1086427000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEwLTEtMS0xLTA_14a05faa-7cbe-4932-97a3-524d3de3e0d0"
      unitRef="usd">64245000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEwLTMtMS0xLTA_27d7d09b-92fe-44cb-b267-c44ee9c7c5d8"
      unitRef="usd">970000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEwLTUtMS0xLTA_ccd7917a-cb98-46ba-b52b-330715f62d13"
      unitRef="usd">11457000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEwLTctMS0xLTA_fb08c7d6-6301-4767-af84-fce5d7abd73f"
      unitRef="usd">76672000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzExLTEtMS0xLTA_5b6750e6-d832-48ff-b781-7942b699d3b3"
      unitRef="usd">255365000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzExLTMtMS0xLTA_dac2df18-1e6b-4f96-bc8b-dbe7da624d62"
      unitRef="usd">26918000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzExLTUtMS0xLTA_e0c696a5-b79d-4f5c-b0e9-d63e0cc9c47b"
      unitRef="usd">-73829000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i27a0089f73bf408b9943723e46fe355b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzExLTctMS0xLTA_8a99278e-fef7-4fa2-b757-8f42cfdc26bb"
      unitRef="usd">208454000</us-gaap:OperatingIncomeLoss>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEyLTEtMS0xLTA_4c388776-2e31-42c2-9a6d-514ce7dbeaeb"
      unitRef="usd">19283000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEyLTMtMS0xLTA_aec2ccd0-3829-47e5-a7a5-bdd0284f1706"
      unitRef="usd">8436000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="ia77989c7ca084deb95414b0e3d57da93_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEyLTUtMS0xLTA_1243ff75-3ca6-4e57-9f58-dae573ffe429"
      unitRef="usd">10379000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEyLTctMS0xLTA_26839104-44f2-41f6-a463-33a2c852c95d"
      unitRef="usd">38098000</tyl:SegmentReportingInformationCapitalExpenditures>
    <us-gaap:Assets
      contextRef="iee9101c9ee6f4be09cb4309ec80b7401_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEzLTEtMS0xLTA_b499029e-c524-44cd-9ce9-5b30b9e17c61"
      unitRef="usd">833203000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i079b5f963ff84613826adf3d7fded19c_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEzLTMtMS0xLTA_d8a4de8d-2f6a-4241-bdff-ef79babd457f"
      unitRef="usd">91343000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ib30d32802f7f4c99938c4e05b9fe987a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEzLTUtMS0xLTA_541cbcb9-258d-48c1-86f8-06b22a932f9a"
      unitRef="usd">1267068000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTpmMjA0ZWEzNjI0YmM0YzViOWQ4MjNkMWQ0ZjUyOTE2NC90YWJsZXJhbmdlOmYyMDRlYTM2MjRiYzRjNWI5ZDgyM2QxZDRmNTI5MTY0XzEzLTctMS0xLTA_14542621-f020-4b5c-8e6a-33f7c5d443c2"
      unitRef="usd">2191614000</us-gaap:Assets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4521963cbf1640c6965540d7f6d38ab8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzItMS0xLTEtMA_84c387f7-1abc-4b92-ab7e-cae5bedce74e"
      unitRef="usd">81299000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8ad21c706fe340cb9411db0681562f68_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzItMy0xLTEtMA_72cdc08d-8e3a-440b-8890-b721b2ca0e5b"
      unitRef="usd">12142000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if22553c28ff942cc8e5900fddca936f2_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzItNS0xLTEtMA_6a1e0fa8-ac37-4b4c-b866-062455b4683f"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i19dbace2df584044aac5e0ab62024623_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzItNy0xLTEtMA_cab3bf93-1752-448d-9f90-1e8b938a2f92"
      unitRef="usd">93441000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1aad5937099e4a2293e0fd91018fa1eb_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzMtMS0xLTEtMA_e0116bc0-7cdb-46f0-b462-a7584f268cf9"
      unitRef="usd">205193000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic2439b0fb7d841e8a8fa30bdc688de94_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzMtMy0xLTEtMA_a6aea34f-4b95-4bcf-b393-91cc6efa4629"
      unitRef="usd">15354000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibf912bc860774b1dba9ba283a2ce334f_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzMtNS0xLTEtMA_a9732779-6123-4366-9162-3449acff49ac"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifde0f926bfce4fd082aedc3599d56854_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzMtNy0xLTEtMA_eeedb614-991a-40a1-b818-f251f1d99af1"
      unitRef="usd">220547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9135b6e30ab045c5857f81db743a8526_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzQtMS0xLTEtMA_04adb0da-2cd4-4add-bf3e-a01d380668cf"
      unitRef="usd">161612000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia370f1b7a2554327b41cc1bef94b00c8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzQtMy0xLTEtMA_e213f727-631a-411e-b04e-6882364feda4"
      unitRef="usd">29657000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iacca40e7da7e4ac28f39fbf369fa2bda_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzQtNS0xLTEtMA_7160d149-54c7-4edb-a910-cb6154b6cc4e"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i321785b37ea747b8879b892dee772d78_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzQtNy0xLTEtMA_5d466593-ab2b-4768-a9b9-bac66c763929"
      unitRef="usd">191269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibce7b17045654da981ced9bab9f9753b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzUtMS0xLTEtMA_d2eaa910-91bd-4e4b-8f40-cd706ba6ab21"
      unitRef="usd">349387000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4d63ed4bfe8446288616dca9a8ce3c06_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzUtMy0xLTEtMA_701d9fe5-780c-4be1-a0c4-929ffc29dbfd"
      unitRef="usd">35134000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if53859a5dd8b4597b1777d2394a24258_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzUtNS0xLTEtMA_5df19e06-225a-4700-9388-7583373ceaaf"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie9abd07dabb546c6acab4fa6949b3c4e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzUtNy0xLTEtMA_82adcd93-97c3-4ea0-821d-7f3ed2432837"
      unitRef="usd">384521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i40b52fdab1124a808a883826d292e023_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzYtMS0xLTEtMA_5020387f-1a4b-4c36-aed4-ed7f550e9c36"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6a42dc7ef48349dd82fa838275843264_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzYtMy0xLTEtMA_6576952b-63e8-4dd4-ae76-276ee9896a11"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie996cfde29c94f61817a44c3ceb6f32e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzYtNS0xLTEtMA_f09a73fb-407b-4f26-ba17-bb4a0ee5a41e"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzYtNy0xLTEtMA_b74a0d07-6731-4237-8157-82fec9e11f05"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i047127629c7049cdb880cf46de83d3df_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzctMS0xLTEtMA_71b3a4fb-d0b1-4d00-b22b-f65802df44d2"
      unitRef="usd">18387000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if2e4d942719b4859b919fc5353befe4a_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzctMy0xLTEtMA_e39286a1-4079-4f89-a93f-fcee655e43d6"
      unitRef="usd">390000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i93f0ac5a22db4e12a181e967a69eb477_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzctNS0xLTEtMA_a894a2b2-6e91-491a-bffe-e4046cc620fd"
      unitRef="usd">4881000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i33a50375addc42559ace50529545ce43_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzctNy0xLTEtMA_786b7620-ebb3-4b9a-9204-cd127844904f"
      unitRef="usd">23658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1ecdc4e374054062b0adc1f0b6e189e4_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzgtMS0xLTEtMA_165e124d-f8f7-44d3-b889-0d65f95e6425"
      unitRef="usd">12764000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2f4ab1e3f40742478b1505d557c44257_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzgtMy0xLTEtMA_cac8b1ab-4dfa-4d2a-9bdb-5ebbfa2ebb47"
      unitRef="usd">391000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id43e6696fe0f47ada64f765007100613_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzgtNS0xLTEtMA_e35e9e7e-9a57-4842-85bb-7a76e94d4f4e"
      unitRef="usd">-13155000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzktMS0xLTEtMA_ca046828-fa54-454e-88c9-4878c1cff23c"
      unitRef="usd">828642000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzktMy0xLTEtMA_c4fbe79b-8844-4529-bad1-f29984b4edec"
      unitRef="usd">114914000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzktNS0xLTEtMA_4871066d-c519-4a82-af30-5efcfc748132"
      unitRef="usd">-8274000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzktNy0xLTEtMA_c1eebc72-6a99-47f0-87f6-176485091aad"
      unitRef="usd">935282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEwLTEtMS0xLTA_6eeeb176-6479-42ec-a135-77589ac9222a"
      unitRef="usd">49921000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEwLTMtMS0xLTA_c2de3326-93f5-433b-aea5-db5175079145"
      unitRef="usd">1123000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEwLTUtMS0xLTA_e4aaefcf-4527-46aa-99b8-9958be1cbe69"
      unitRef="usd">10715000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEwLTctMS0xLTA_d51209ec-d073-4aa7-ac78-5ab8d5081f63"
      unitRef="usd">61759000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzExLTEtMS0xLTA_bc0da1dc-2462-4294-82f7-7ea4c870fd02"
      unitRef="usd">231819000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzExLTMtMS0xLTA_2ccf4d79-1303-4197-a333-6077441240c3"
      unitRef="usd">28434000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzExLTUtMS0xLTA_1f5f0469-bc07-4298-96c6-2c83bd15275f"
      unitRef="usd">-68572000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i16e3c72329974206b28447d282141bd9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzExLTctMS0xLTA_cfc64ad6-05df-4e9d-b8ec-f28871605ab2"
      unitRef="usd">191681000</us-gaap:OperatingIncomeLoss>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEyLTEtMS0xLTA_1bf8d598-2345-4757-ad37-3250deb0f0ae"
      unitRef="usd">9918000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEyLTMtMS0xLTA_fbde645e-9cb4-43f1-abdf-12b0b22bc8e4"
      unitRef="usd">1241000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="ie7f7b912448842e59aa3e41f49a9c030_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEyLTUtMS0xLTA_12b59d7c-b582-4c97-a7c9-287d42cd1e3f"
      unitRef="usd">13973000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEyLTctMS0xLTA_2bd99a2f-4421-44a5-a8ae-8493d9a4105c"
      unitRef="usd">25132000</tyl:SegmentReportingInformationCapitalExpenditures>
    <us-gaap:Assets
      contextRef="i5ede29565891475e8788cf9eb6ebd6ff_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEzLTEtMS0xLTA_6a26f6ac-6885-4d50-a3bd-77dd089fa7a0"
      unitRef="usd">554960000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ieab21d0cb4014d989822c3fcf535de9d_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEzLTMtMS0xLTA_61012691-bcad-43a2-9ff4-0f7508cdacad"
      unitRef="usd">64810000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i5607ea47340b4cfcabdbd3a677fb48f8_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEzLTUtMS0xLTA_279fa660-e26e-48c7-a87d-cfd8909fd39c"
      unitRef="usd">1171193000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i2d5b35757f0644f7924170354b92a6bd_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTowMzVlNjNlMGM5ZjM0MWRhOTNmMTdjYzdmZTFlM2E1ZS90YWJsZXJhbmdlOjAzNWU2M2UwYzlmMzQxZGE5M2YxN2NjN2ZlMWUzYTVlXzEzLTctMS0xLTA_590f2934-452c-4ffb-a382-ed6843275d9d"
      unitRef="usd">1790963000</us-gaap:Assets>
    <us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90ZXh0cmVnaW9uOjY3NjM5OWY5MmFjZjQ1Nzk5MTE5NTc4ZmQzZTdlOTdiXzM4OTE_de827847-5e5c-4b5a-bd71-9c88dbf3e979">&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:84.444%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.235%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.577%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.577%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.745%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Reconciliation of reportable segment operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;income to the Company's consolidated totals:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total segment operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;226,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;208,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortization of acquired software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(31,962)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(30,642)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(22,972)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortization of customer and trade name intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(21,662)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(21,445)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(16,217)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Other income, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2,116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Income before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;175,042&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;159,838&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;155,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock>
    <us-gaap:OperatingIncomeLoss
      contextRef="i20538c481f6b4f248bfa73e7e3b47cfc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzItMi0xLTEtMA_2b455109-adfa-4089-ab2f-2cee176e0f1b"
      unitRef="usd">226550000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i27a0089f73bf408b9943723e46fe355b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzItNC0xLTEtMA_1a33a5a6-0b5e-4a61-a9eb-8cbea7b7a425"
      unitRef="usd">208454000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i16e3c72329974206b28447d282141bd9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzItNi0xLTEtMA_f999497d-4c76-4c58-a7d1-3ca741c9c4e6"
      unitRef="usd">191681000</us-gaap:OperatingIncomeLoss>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i0c0b7e083ecf409aaf3ad6340f8dac46_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzMtMi0xLTEtMA_2b740df5-ef25-482d-950a-ea841f0b37eb"
      unitRef="usd">31962000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ib017794e72244d0c9cc15892c74e8e3c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzMtNC0xLTEtMA_0a898046-0bc3-4f95-b948-0c60105bce65"
      unitRef="usd">30642000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i7a1e475a5ccc40388fdd253f99b09167_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzMtNi0xLTEtMA_67a7ac12-9f75-45c8-b2e1-456726ff48da"
      unitRef="usd">22972000</us-gaap:CostOfGoodsAndServicesSold>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzQtMi0xLTEtMA_afa0f111-7d96-4b3e-9ebb-1e591b85b066"
      unitRef="usd">21662000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzQtNC0xLTEtMA_4feb8718-52a7-4eb8-b49d-988ee1e679e6"
      unitRef="usd">21445000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzQtNi0xLTEtMA_7045247c-cb77-45d6-b27e-848f89e8799a"
      unitRef="usd">16217000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzUtMi0xLTEtMA_db71b156-4e18-4a18-97ae-f44efdc8bc51"
      unitRef="usd">2116000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzUtNC0xLTEtMA_b5792f6d-40d1-4fc1-927b-56d530d307f5"
      unitRef="usd">3471000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzUtNi0xLTEtMA_e5f260e2-b05c-4a68-ac5a-1894bc8af597"
      unitRef="usd">3378000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzYtMi0xLTEtMA_966dc32a-7671-45d2-9cbb-26ed0bdf932a"
      unitRef="usd">175042000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzYtNC0xLTEtMA_0a9a22b7-dfa7-413d-bc1a-d3b559bc5e64"
      unitRef="usd">159838000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjYvZnJhZzo2NzYzOTlmOTJhY2Y0NTc5OTExOTU3OGZkM2U3ZTk3Yi90YWJsZTphOGM0ZTc3N2Y0ZWU0NTkxODgyMTg2N2U2OGZkOTllOS90YWJsZXJhbmdlOmE4YzRlNzc3ZjRlZTQ1OTE4ODIxODY3ZTY4ZmQ5OWU5XzYtNi0xLTEtMA_1ab1abc1-5248-45c3-a8ea-b06b09206cdb"
      unitRef="usd">155870000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzEwNDg_03f70324-2473-4d31-8112-7df17c533a1c">DISAGGREGATION OF REVENUE&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Timing of Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Timing of revenue recognition by revenue category during the period is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.178%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.170%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.309%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.855%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;62,029&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11,135&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;73,164&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;350,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;350,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;186,409&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;186,409&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;467,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;467,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,802&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,802&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;79,831&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,036,832&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,116,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.178%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.170%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.309%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.855%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;84,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;100,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;296,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;296,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;213,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;213,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;430,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;430,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;107,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;978,515&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,086,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.083%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.638%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.638%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.634%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2018&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;75,188&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;93,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;220,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;220,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;384,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;384,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;98,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;836,436&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;935,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Recurring Revenue &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwMQ_f227370c-2237-429d-ad5d-84836ff26078"&gt;one&lt;/span&gt; to 10 years but are typically contracted for initial periods of &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg2OA_bbe6fc68-13b7-4abb-8c69-8e3ba541aaec"&gt;three&lt;/span&gt; to five years. Non-recurring revenues are derived from all other revenue categories.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Recurring revenues and non-recurring revenues recognized during the period are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:8pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.863%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.927%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.016%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.952%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;755,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;62,652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;818,160&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;246,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;52,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;298,503&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,131)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,020,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;114,824&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,120)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,116,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.863%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.927%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.016%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.952%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;672,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53,866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;726,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;287,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;66,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;359,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(15,496)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;975,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;120,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(9,240)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,086,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.863%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.370%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.574%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.395%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2018&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;554,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;50,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;605,069&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;261,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;64,035&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;330,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;12,764&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(13,155)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;828,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;114,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(8,274)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;935,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total deferred revenue, including long-term, by segment is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.138%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.979%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.870%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.871%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;422,742&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;375,838&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;36,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;35,487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,691&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;461,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;412,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in total deferred revenue, including long-term, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.892%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.916%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;412,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferral of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,094,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Recognition of deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,045,501)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;461,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Transaction Price Allocated to the Remaining Performance Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 December&#160;31, 2020 was $1.59 billion, of which we expect to recognize approximately 49% as revenue over the next 12 months and the remainder thereafter.&lt;/span&gt;&lt;/div&gt;DEFERRED COMMISSIONSSales 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 generally &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM0OA_aaa61222-6e5a-41d4-8f6e-bd9f0f649267"&gt;three&lt;/span&gt; to seven years. Deferred commissions were&#160;$32.3 million, $29.8 million, as of December&#160;31, 2020, and 2019 respectively. Amortization expense was&#160;$11.9 million,&#160;$11.5 million, and $9.6 million for the&#160;twelve months ended December&#160;31, 2020, 2019, and 2018, 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.</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzEwNTA_99691631-08f5-4591-b3f9-83dfcf22bcb8">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Timing of revenue recognition by revenue category during the period is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.178%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.170%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.309%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.855%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;62,029&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11,135&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;73,164&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;350,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;350,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;186,409&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;186,409&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;467,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;467,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,802&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;17,802&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;79,831&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,036,832&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,116,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.178%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.170%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.309%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.855%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;84,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;100,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;296,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;296,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;213,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;213,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;430,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;430,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;107,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;978,515&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,086,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.083%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.638%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.638%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.634%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2018&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Products and services transferred over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software licenses and royalties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;75,188&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;18,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;93,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Subscriptions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;220,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;220,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Software services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;191,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Maintenance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;384,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;384,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;21,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Hardware and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;23,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;98,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;836,436&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;935,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Recurring revenues and non-recurring revenues recognized during the period are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:8pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.863%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.927%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.016%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.952%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;755,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;62,652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;818,160&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;246,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;52,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;298,503&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;19,061&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,131)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,020,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;114,824&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(19,120)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,116,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.863%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.927%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.016%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.952%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;672,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53,866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;726,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;287,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;66,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;6,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;359,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;15,290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(15,496)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;975,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;120,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(9,240)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,086,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.863%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.370%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.574%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.395%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;For the year ended December 31, 2018&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise&lt;br/&gt;Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;554,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;50,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;605,069&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Non-recurring revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;261,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;64,035&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;4,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;330,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Intercompany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;12,764&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(13,155)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;828,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;114,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(8,274)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;935,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic06b075c984748b299e6f90b6ed4dbd9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzItMi0xLTEtMA_1a878534-b901-45e6-8ac4-d7e11172885e"
      unitRef="usd">62029000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idca986a4ea24433283e7eb2ec4c9ef60_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzItNC0xLTEtMA_ba74c777-9b35-49c0-85ca-2cc6f5fa911d"
      unitRef="usd">11135000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2e91e63dcd724a48a90294c512bdd40c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzItNi0xLTEtMA_f31d029d-b6f1-43d1-a5df-2d846c00dd28"
      unitRef="usd">73164000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib5758dbecdf24fbc9276380fc8db350f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzMtMi0xLTEtMA_4c87f06f-8772-4253-9e43-6c32afc01460"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i88db4d58db264cdf9a040edd12ab4b64_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzMtNC0xLTEtMA_8f6a8c8a-fcfe-44b9-ac9b-7834246b6a33"
      unitRef="usd">350648000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia8322e4d56da4e2d95685db9396c9692_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzMtNi0xLTEtMA_77b9520b-11df-4bb0-a463-d0e3b62e4310"
      unitRef="usd">350648000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie404d1023b2e4f27a09d0d6e417c9d09_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzQtMi0xLTEtMA_537e7319-3a7a-4a92-a2aa-a204098cff66"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic3521c17bed745d6b7b97aed9032c297_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzQtNC0xLTEtMA_6789358f-cfb3-40b7-b073-46e9ce1b04c2"
      unitRef="usd">186409000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9cc233e615334f518f580b82bb14d73a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzQtNi0xLTEtMA_f0255009-b665-418a-9211-0a19d6a3b550"
      unitRef="usd">186409000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic74c202358194dc2ad96dca31adeb5c4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzUtMi0xLTEtMA_29e36882-90a6-4935-bbfd-8426840342a6"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i41624fbe290d47e88764ba29a3f2c7df_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzUtNC0xLTEtMA_e6fe57c5-86a4-4724-984e-258a8280f857"
      unitRef="usd">467513000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i05e1622f629a4425913b1635df4a04e2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzUtNi0xLTEtMA_43e394f0-2205-4b45-9f86-d5ac45e6a61e"
      unitRef="usd">467513000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5236921ceff4428a8a1293a8c13b4796_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzYtMi0xLTEtMA_14986a28-ab73-43e4-b75c-29f3d7eecd7a"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iafad67b68d36415389e35d95f7d7097c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzYtNC0xLTEtMA_4466feb3-952a-4ea7-adf7-78a64e298635"
      unitRef="usd">21127000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1b3f1e3d428e4132927a753977386694_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzYtNi0xLTEtMA_19f55f36-8fcb-451c-aed6-feec1a3c862e"
      unitRef="usd">21127000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5d827cd29e214fba854ce173f1f9f8b9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzctMi0xLTEtMA_41bfe429-7ff0-475b-936d-d846f9e1b3af"
      unitRef="usd">17802000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia3493665acbb4df4a46e3121f8b28e41_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzctNC0xLTEtMA_af894c5f-195f-457e-b6fa-4e731d064f41"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5ca42f97119049588f2dc1ea31ed561e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzctNi0xLTEtMA_b8574790-b0dd-446f-bccf-f133219971eb"
      unitRef="usd">17802000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia35003eb05c94ac99fa96195ea44c2b2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzgtMi0xLTEtMA_ab1c2671-348d-492d-ab2e-ebfb458ab5f4"
      unitRef="usd">79831000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie323bc953efe4028a95d59dd71e1047e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzgtNC0xLTEtMA_c1dc9670-586c-4da7-9921-67ab675fc0a4"
      unitRef="usd">1036832000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo2YzU0Y2VlZGFiZmM0YjNlYjY1NjE2YmUxMjQ5ZDMzNi90YWJsZXJhbmdlOjZjNTRjZWVkYWJmYzRiM2ViNjU2MTZiZTEyNDlkMzM2XzgtNi0xLTEtMA_4063c5eb-2412-4325-bcf3-d3cf8335ea41"
      unitRef="usd">1116663000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic4b118fb59224e7682304966b379745f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzItMi0xLTEtMA_af42e906-cd42-4208-b12c-7b5d8f6c6bb4"
      unitRef="usd">84900000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieb1ea067db4642b9ad657f1c16d2e87b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzItNC0xLTEtMA_f0dcbc7e-8f62-4397-9d20-aef3be3b04eb"
      unitRef="usd">15305000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i573d9d38aebc4dfdbedc8aab3002adfc_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzItNi0xLTEtMA_8c24e4fe-132f-4078-a73c-5924014ea1f6"
      unitRef="usd">100205000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia9f14bbeed814f11a0ab79e9cb41189b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzMtMi0xLTEtMA_560f3a15-149d-41c6-b882-1617b6341447"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i60f8e2975f9e41d6ba7f13be6fbf6e99_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzMtNC0xLTEtMA_cad857bf-83e7-4a87-8a07-5e5ea86046a4"
      unitRef="usd">296352000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ida4f226a38484bfba1d39a6cb3f09899_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzMtNi0xLTEtMA_f9443fed-7451-4be3-9f5e-04313519d39e"
      unitRef="usd">296352000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie98bb68a93b44965825cb2c8ceae7a4e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzQtMi0xLTEtMA_1c442127-a937-448c-a559-e1b9a2eeb043"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0863c02b7bf64f529669ba0296368dae_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzQtNC0xLTEtMA_de9c0c5b-9082-4b15-872d-1ffcb62ac9a6"
      unitRef="usd">213061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5c7d1b68baf7406fa7740140cec4e452_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzQtNi0xLTEtMA_47f4ca54-21ce-431a-bf76-c6cbc9ce02c3"
      unitRef="usd">213061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1af2984530ee4c29963176b6e39badef_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzUtMi0xLTEtMA_c6e189b0-daba-43f6-8f98-ac61c152b67d"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iaef736eff1db45f2a0a38f5d6b15c789_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzUtNC0xLTEtMA_ca098eb1-0c96-45d0-8ff3-3ca2dedfcc34"
      unitRef="usd">430318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8d10cc1da94440e1b8af4178515524bd_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzUtNi0xLTEtMA_adb4793e-7c45-41db-a0f2-48180e5e8ec8"
      unitRef="usd">430318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3dd06f2547e94523b6b5d770f4d02001_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzYtMi0xLTEtMA_413961d1-3e57-4d1d-afde-1b033843bca0"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibb72291e8b444df0a6809d0558f0d53e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzYtNC0xLTEtMA_2d65fe91-92fb-4997-9d22-2da430e3d23b"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib8c0dbddf80446169e0cfbc8380c252c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzYtNi0xLTEtMA_abaff90f-8101-4ff5-a8a6-48fab6b5e5f1"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3228b5ae61374a6a8baff28271dca14c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzctMi0xLTEtMA_c063a986-6d67-4b6c-921a-c3ed192cb0f8"
      unitRef="usd">23012000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ice166ef1838d494993ecc175966d9f07_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzctNC0xLTEtMA_b12b03d0-ab65-4342-9ec4-e7b49b1e239e"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iba59f1fc8ecc47629796b9e30800609c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzctNi0xLTEtMA_11e12b8d-4c50-48cb-bb06-6afb4b37a4b3"
      unitRef="usd">23012000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i456e0b46eec44e44823802fb48496bd1_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzgtMi0xLTEtMA_8ac2f582-719b-45f6-96cc-2358b3ad79ab"
      unitRef="usd">107912000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0a3ebc400648468d93df88fcabcd5437_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzgtNC0xLTEtMA_30d102f3-33ec-4741-ad41-16967626bfda"
      unitRef="usd">978515000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZToyYjYxZTllYjU4MzY0N2U1YTFmZjcwM2E2OTM1ZTRlYS90YWJsZXJhbmdlOjJiNjFlOWViNTgzNjQ3ZTVhMWZmNzAzYTY5MzVlNGVhXzgtNi0xLTEtMA_f74d1877-e856-44f6-bffe-4bbe8154c007"
      unitRef="usd">1086427000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id6e79d8a6f8c4624b612ce8ea9a3bba8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzItMi0xLTEtMA_fd15c9bf-48e4-4c55-af97-da8843773696"
      unitRef="usd">75188000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8b5e1165a3a64022a70310fa0bd0e834_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzItNC0xLTEtMA_6be24a18-6a15-4e20-a5d6-11a3d1635502"
      unitRef="usd">18253000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i19dbace2df584044aac5e0ab62024623_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzItNi0xLTEtMA_9b5fe8b4-8001-445d-99bf-e4ac95950e2a"
      unitRef="usd">93441000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie296594afadc4d10bbe2a60369ba6444_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzMtMi0xLTEtMA_39a1d665-5b2f-41be-b32c-cb328546643e"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i30539d66e910450a9aa6513ab82f4549_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzMtNC0xLTEtMA_e9e1b0ca-0ad2-4e5a-a4cb-0b4a99862384"
      unitRef="usd">220547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifde0f926bfce4fd082aedc3599d56854_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzMtNi0xLTEtMA_13eb0732-80ff-4191-9c1a-24cfea592eae"
      unitRef="usd">220547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5f3e6895f0034ba18a0c1f0a4381ea4d_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzQtMi0xLTEtMA_9b960a57-e432-448e-967b-4b3090dcf48e"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iefdea658b3624f6c99b1cbbf902bc3bf_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzQtNC0xLTEtMA_e6ceea93-31cf-4f9d-9b2c-6f7a17f3e4af"
      unitRef="usd">191269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i321785b37ea747b8879b892dee772d78_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzQtNi0xLTEtMA_62c9ddec-7954-4167-93c9-b0435e1231be"
      unitRef="usd">191269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia72ad4cced7f45c0be875b7f701ff253_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzUtMi0xLTEtMA_b07c7d95-c001-4392-8c87-381998872fe8"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if4aa41eda5044f509fa31fac7af47ac9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzUtNC0xLTEtMA_a6d7b59d-4003-4186-bc8e-2c1939492a53"
      unitRef="usd">384521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie9abd07dabb546c6acab4fa6949b3c4e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzUtNi0xLTEtMA_b130f7f7-8e67-4f00-a369-00930a609124"
      unitRef="usd">384521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2330b90e43d64bbd9d882f331f7eac16_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzYtMi0xLTEtMA_44702ddd-ce76-41f1-92f9-446a27972ef5"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id1dca31a3fdb466d86ab7d4afe7c1fef_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzYtNC0xLTEtMA_45f9b44d-a1c9-4569-8110-1c3650ab1223"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9a6c3883786f49889923a88eb07a411d_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzYtNi0xLTEtMA_0072cdf0-ed5d-4d4c-bf6b-c849e155eb4b"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5f9b125c3b6e4455b029d41f0a604cb9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzctMi0xLTEtMA_59843939-feef-4765-b604-a0cfc5393613"
      unitRef="usd">23658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2e6434c6997f4dfab4a6d963bc641791_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzctNC0xLTEtMA_acf7db43-0911-4580-8ced-8be8a8d1daea"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id4fc66e631144d6ead9c2a03a1ec2293_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzctNi0xLTEtMA_53932eba-fa7f-484e-b065-186615430be1"
      unitRef="usd">23658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iec0771ed002247d3b872c9828fc3893c_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzgtMi0xLTEtMA_7a8c1737-acab-4658-8768-6489f80c0f76"
      unitRef="usd">98846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i90565bf53615482ab84be82e68a17187_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzgtNC0xLTEtMA_033eb530-8059-4616-94a7-2990badfea81"
      unitRef="usd">836436000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpiNDViOWUwODA3NjE0MWJkYTQ2NDJmYjM2ZmE0MTg2OC90YWJsZXJhbmdlOmI0NWI5ZTA4MDc2MTQxYmRhNDY0MmZiMzZmYTQxODY4XzgtNi0xLTEtMA_7fee43f2-2a7c-4cb3-94ac-4ba5f11af9e1"
      unitRef="usd">935282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwNw_f4f9bf6e-6666-4f37-85b7-9e967ab83b7b">P10Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg3NA_139f0e16-cced-4c8f-bec4-73a91eedd16b">P5Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i43a3b3114e4f4b41aa6686085148818c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzEtMi0xLTEtMA_24972e7f-d37b-43f5-97f3-fa660c94a6da"
      unitRef="usd">755508000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i30c7482c204e4d92aa7225c9443ac902_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzEtNC0xLTEtMA_c7f0071e-6497-4550-b6cb-941773989cc1"
      unitRef="usd">62652000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i13b169af0153481dbfc250ff522efd7d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzEtNi0xLTEtMA_c2211f7a-6062-478e-883f-c4c075eb7ec9"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5d690ef4857442a99408eaa38571ba81_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzEtOC0xLTEtMA_2bad09ef-e784-408c-912b-f258c0b2510e"
      unitRef="usd">818160000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia1d04c0f1f004087a9320e951fe51100_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzItMi0xLTEtMA_ef322099-606b-491c-893d-33a64a990521"
      unitRef="usd">246390000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icae667a9c53d4d95895be049af6e1365_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzItNC0xLTEtMA_6d97bdd1-a096-49fd-bf43-803d8a1bebab"
      unitRef="usd">52102000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i11f3a0ebc0e442a09083af76d68073e4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzItNi0xLTEtMA_75412027-8a02-4c69-a42b-71cbf32dee85"
      unitRef="usd">11000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i90394ba33e644132abcc99dfc7c4f81d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzItOC0xLTEtMA_b181e725-6eae-48db-9034-9144542a8727"
      unitRef="usd">298503000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i605bb7a621c94f0a90ad78dcbc8e0b4b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzMtMi0xLTEtMA_5b38b67e-97ef-46e4-ba72-305c0fcd729c"
      unitRef="usd">19061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i993fd2302c8f4b5d9203136c5c02e6e3_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzMtNC0xLTEtMA_5490c994-d08e-45dd-a410-79bc199909e7"
      unitRef="usd">70000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i328eb1e00308488e8fe0cae2086cd019_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzMtNi0xLTEtMA_4e3a54c4-a3ad-42b1-aa91-71637bcfa92a"
      unitRef="usd">-19131000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0e8eb959c8e24ecca1fd91cc410e2cd8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzQtMi0xLTEtMA_96364a6c-2082-4eb3-8278-8ed47414bf54"
      unitRef="usd">1020959000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i32d4c0d083fb4753a1531a0ba2e767bb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzQtNC0xLTEtMA_0804a135-89e4-409d-974f-6beeaf49075b"
      unitRef="usd">114824000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3445a31732f24a65a862d5e005ac762c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzQtNi0xLTEtMA_337f69bd-2824-4a17-bbdd-371f259851b0"
      unitRef="usd">-19120000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo0ODEzMTI4MDQ3MGM0ZjUwOTY2NWU1NTNhZjRlZjUxNy90YWJsZXJhbmdlOjQ4MTMxMjgwNDcwYzRmNTA5NjY1ZTU1M2FmNGVmNTE3XzQtOC0xLTEtMA_f81a1b40-2866-4c08-8b80-94d98263d6c1"
      unitRef="usd">1116663000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8bcb3a63e1184a6da13d229983e0bf8d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzEtMi0xLTEtMA_a7c5f827-4c9f-49c2-9ff1-ff85bb8a3081"
      unitRef="usd">672804000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i83427b8854304fb8b10c8587f43e5f87_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzEtNC0xLTEtMA_06395998-5fcc-42b5-a21e-684433c07bdd"
      unitRef="usd">53866000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4a03ecad18d44092b7400425a66cf83a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzEtNi0xLTEtMA_c4950495-5f6a-4d27-b35a-e9a6091158e3"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i79b9f8b7c0a143ab89753d72adbc8578_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzEtOC0xLTEtMA_b77596a9-c274-4ebe-ae96-d1fb8bc6f305"
      unitRef="usd">726670000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i61a20a8a61cd4df5b764c46f5f2d8976_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzItMi0xLTEtMA_6def9147-1412-49b1-96d2-55c12f3d2ac2"
      unitRef="usd">287225000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i684267dd3f8b4ecd95e4c99ced1c2423_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzItNC0xLTEtMA_5375b15a-a2b3-41f4-8acb-1f7da82a9586"
      unitRef="usd">66276000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iccb7c20612864e26baedec0f83c8ccdf_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzItNi0xLTEtMA_f5d22019-ce1b-4440-9589-84ca67158188"
      unitRef="usd">6256000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i618865cb24b84f6d923d028a187de73f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzItOC0xLTEtMA_2eaa5239-9a21-4f36-b054-388528b3d52f"
      unitRef="usd">359757000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if3471d9417bd49cb8b685414796e6c4c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzMtMi0xLTEtMA_113c81a8-1762-4cca-b1dc-230cb57d7d2e"
      unitRef="usd">15290000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i440f307e20524fe0833637af7678f996_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzMtNC0xLTEtMA_bd61b71d-83cb-4da4-83ad-c6ffe1c58008"
      unitRef="usd">206000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i553e24a2da774e478754fc9c1e57a562_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzMtNi0xLTEtMA_7c0b6030-60c1-4a51-93a9-7f630aefbc66"
      unitRef="usd">-15496000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i81abbadf4a434d8d8692279b4d90a4d9_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzQtMi0xLTEtMA_03d76e19-2540-4f7c-ab49-11611137906c"
      unitRef="usd">975319000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie8b6cbc6da8546e9a8460b6785258af4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzQtNC0xLTEtMA_0ae9ce03-19a8-479f-b48f-49d52e7a0bd6"
      unitRef="usd">120348000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5e4ab2b44b484480be10536043777e7a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzQtNi0xLTEtMA_419e587e-9030-49ee-aa6e-b13a4fa6e8c3"
      unitRef="usd">-9240000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTpjYTg4YmM5MWNkNzM0NWExODAxNGNmZmE0ODRiYWRiZi90YWJsZXJhbmdlOmNhODhiYzkxY2Q3MzQ1YTE4MDE0Y2ZmYTQ4NGJhZGJmXzQtOC0xLTEtMA_c52106af-c234-4dc1-91b2-81fe0b94894d"
      unitRef="usd">1086427000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9e72e38f5be3453282ce5f907d536e8a_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzEtMi0xLTEtMA_f8513cc3-fc12-4d46-a5be-b9bb765100e6"
      unitRef="usd">554581000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7818d46a5d8b47ecb2ef6aa3aa4d219d_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzEtNC0xLTEtMA_fa85b089-bfb6-4276-b32f-2f7a6bb5969c"
      unitRef="usd">50488000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia5ac0b98eb3b437e9e746b2f7cc5e97c_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzEtNi0xLTEtMA_3f54016a-f4f4-44b6-9726-a82f62f32999"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2f5c8afdaded4119a0134645328601b8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzEtOC0xLTEtMA_245895a5-d945-4344-8e73-3cef95a388a8"
      unitRef="usd">605069000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id3a1c250124843d180e37631a9a158a8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzItMi0xLTEtMA_4ca9a184-7091-43fc-ad4b-ae44d48e6517"
      unitRef="usd">261297000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i740eecf03fd54d479432ffae3de0a8d1_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzItNC0xLTEtMA_515146ac-0cc0-4200-87a9-1d1f84a07444"
      unitRef="usd">64035000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3a78d159ac204462baa0ac6a418f3e74_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzItNi0xLTEtMA_d9762ea3-8669-499c-a26b-bb8cfc92f5aa"
      unitRef="usd">4881000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i19d8a060accd40f68cdc69b39f176a15_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzItOC0xLTEtMA_7890931f-f796-4813-8565-e846c02b8d92"
      unitRef="usd">330213000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1ecdc4e374054062b0adc1f0b6e189e4_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzMtMi0xLTEtMA_08a78660-05e9-4cec-9370-302748e3c218"
      unitRef="usd">12764000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2f4ab1e3f40742478b1505d557c44257_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzMtNC0xLTEtMA_e7cf2c6d-9365-4609-99a7-ac6717eb0600"
      unitRef="usd">391000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id43e6696fe0f47ada64f765007100613_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzMtNi0xLTEtMA_4d7edeaa-2827-4793-9623-b9827894115d"
      unitRef="usd">-13155000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i66568784bd264412b8ee5a984f047df8_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzQtMi0xLTEtMA_98a7fa44-5f58-41c8-99e7-47bc5a697b4d"
      unitRef="usd">828642000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1715b33a938b4202bbc9f397f64b5ca9_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzQtNC0xLTEtMA_8b5be864-49ca-42f2-959e-f9d5c65ca604"
      unitRef="usd">114914000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7b05d508d00749e2b8162049ad8b5b92_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzQtNi0xLTEtMA_eeea8ecd-cc92-495c-9040-ddb37d9a422b"
      unitRef="usd">-8274000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90YWJsZTo3OGY3MzEzZjE1YTM0MTkxYWE0YzM4NTZmOWNmODUxMS90YWJsZXJhbmdlOjc4ZjczMTNmMTVhMzQxOTFhYTRjMzg1NmY5Y2Y4NTExXzQtOC0xLTEtMA_ccda6e1a-11cd-433d-a033-878b88ff0f43"
      unitRef="usd">935282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90ZXh0cmVnaW9uOmY4ZjRjYzUxOWJlMzRkOGM4OGFkNWYxOTI1NmY0MzA4XzY5NA_04dc708b-bdf2-4182-9401-207e3038cbd8">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total deferred revenue, including long-term, by segment is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.138%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.979%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.870%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.871%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Enterprise Software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;422,742&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;375,838&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;36,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;35,487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,691&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;461,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;412,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in total deferred revenue, including long-term, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:14pt;margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.892%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.916%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;412,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Deferral of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1,094,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Recognition of deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(1,045,501)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Balance at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;461,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i80940766fb8a4664b36c530c616fcd77_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzEtMi0xLTEtMA_e0ab74bf-a570-426a-8f89-168bf332c1ad"
      unitRef="usd">422742000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="iee9101c9ee6f4be09cb4309ec80b7401_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzEtNC0xLTEtMA_aef1b9f9-e92e-4cb9-9ae0-bc9358a7e7f4"
      unitRef="usd">375838000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="ia427f4d34826408fa62a3e2007be5010_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzItMi0xLTEtMA_d2ed4641-5b42-42ef-872f-8978390f2e2a"
      unitRef="usd">36945000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i079b5f963ff84613826adf3d7fded19c_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzItNC0xLTEtMA_010fd08b-0db0-443d-9711-14624cdedd4f"
      unitRef="usd">35487000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i282eeaf0e8dd48b3a2ad2ded16faad06_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzMtMi0xLTEtMA_3df1d7fc-a138-48f1-8ac5-b1be809adadb"
      unitRef="usd">1691000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="ib30d32802f7f4c99938c4e05b9fe987a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzMtNC0xLTEtMA_6962a996-bb13-41c5-8de3-89be69bc8336"
      unitRef="usd">1369000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzQtMi0xLTEtMA_70139fa5-02f6-4549-8e1b-4b9b2e1ee0e7"
      unitRef="usd">461378000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTplMTg3YzIwOTZkODU0NGEzOWM2OGI1NTVkZGNkZTFhYy90YWJsZXJhbmdlOmUxODdjMjA5NmQ4NTQ0YTM5YzY4YjU1NWRkY2RlMWFjXzQtNC0xLTEtMA_95d00a88-deee-4611-9bac-0d32a176c5b4"
      unitRef="usd">412694000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTphZTdjOTU4ZjNjMWY0OTk5OWNjODA2NDdiZDg1ZTYxZC90YWJsZXJhbmdlOmFlN2M5NThmM2MxZjQ5OTk5Y2M4MDY0N2JkODVlNjFkXzEtMi0xLTEtMA_92a269d5-5ac4-4a24-8f59-d9e074e30754"
      unitRef="usd">412694000</us-gaap:ContractWithCustomerLiability>
    <tyl:ContractWithCustomerLiabilityIncreaseFromDeferral
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTphZTdjOTU4ZjNjMWY0OTk5OWNjODA2NDdiZDg1ZTYxZC90YWJsZXJhbmdlOmFlN2M5NThmM2MxZjQ5OTk5Y2M4MDY0N2JkODVlNjFkXzItMi0xLTEtMA_c00ac7e3-d58d-4ec0-83d2-3097a7fc9993"
      unitRef="usd">1094185000</tyl:ContractWithCustomerLiabilityIncreaseFromDeferral>
    <tyl:ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTphZTdjOTU4ZjNjMWY0OTk5OWNjODA2NDdiZDg1ZTYxZC90YWJsZXJhbmdlOmFlN2M5NThmM2MxZjQ5OTk5Y2M4MDY0N2JkODVlNjFkXzMtMi0xLTEtMA_0f9801f1-f8ed-4610-b3d8-150a1ed65801"
      unitRef="usd">1045501000</tyl:ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized>
    <us-gaap:ContractWithCustomerLiability
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90YWJsZTphZTdjOTU4ZjNjMWY0OTk5OWNjODA2NDdiZDg1ZTYxZC90YWJsZXJhbmdlOmFlN2M5NThmM2MxZjQ5OTk5Y2M4MDY0N2JkODVlNjFkXzktMi0xLTEtMA_e52f0794-af35-4b89-ab81-8ce71edf0cf7"
      unitRef="usd">461378000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-7"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90ZXh0cmVnaW9uOmY4ZjRjYzUxOWJlMzRkOGM4OGFkNWYxOTI1NmY0MzA4XzU3Mw_643ef171-31db-4a57-8ea4-7d1a7adaab50"
      unitRef="usd">1590000000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="i120a3f6aa2394e6b92280fdbf67605aa_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90ZXh0cmVnaW9uOmY4ZjRjYzUxOWJlMzRkOGM4OGFkNWYxOTI1NmY0MzA4XzYyMw_ae675cea-bad9-4c94-acce-900d1f83b658"
      unitRef="number">0.49</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i120a3f6aa2394e6b92280fdbf67605aa_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzIvZnJhZzpmOGY0Y2M1MTliZTM0ZDhjODhhZDVmMTkyNTZmNDMwOC90ZXh0cmVnaW9uOmY4ZjRjYzUxOWJlMzRkOGM4OGFkNWYxOTI1NmY0MzA4XzY1MQ_a58664b8-4777-4ef8-a7c0-a627d2e65bcc">P12M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <tyl:SalesCommissionsAmortizationPeriod
      contextRef="iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM1NA_d82c1daa-3619-4d60-9a08-79d1e950a62c">P7Y</tyl:SalesCommissionsAmortizationPeriod>
    <us-gaap:CapitalizedContractCostNet
      contextRef="id293bf05103a494192d983b0a8bacaab_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM4NA_ee81cca2-f1ab-4380-b9eb-cb98ba8cccda"
      unitRef="usd">32300000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostNet
      contextRef="iec74e62741324a67999f82c1f1432c6a_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM4OA_e9c17c00-3031-4673-9829-702c79cd06e7"
      unitRef="usd">29800000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzQ2NQ_75ba904a-2563-43db-959e-5d28ca652751"
      unitRef="usd">11900000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="i4e8856bef773468e8e713414ec3ca136_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzQ2OA_4dcedc78-9cb1-43e3-986e-0795708fe5ed"
      unitRef="usd">11500000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="icdb4bba259254bf6a45ac2ec72cceb08_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzQ3Mg_6eaef0c2-fc25-4b7b-afd8-7d1074dadce8"
      unitRef="usd">9600000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzExMA_12eaf924-d7bd-444c-a0ef-14b430e327be">SUBSEQUENT EVENTS&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following events or transactions have occurred subsequent to December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;NIC, Inc.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 9, 2021, Tyler Technologies, Inc. (the &#x201c;Company&#x201d;) entered into an Agreement and Plan of Merger (the &#x201c;Merger Agreement&#x201d;) by and among the Company, Topos Acquisition, Inc., a Delaware corporation and wholly owned subsidiary of the Company (&#x201c;Merger Sub&#x201d;), and NIC Inc., a Delaware corporation (&#x201c;NIC&#x201d;). Pursuant to the Merger Agreement, and upon the terms and subject to the conditions therein, Merger Sub will merge with and into NIC (the &#x201c;Merger&#x201d;), with NIC surviving the Merger and continuing as a wholly owned subsidiary of the Company&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Subject to the terms and conditions of the Merger Agreement, at the effective time of the Merger (the &#x201c;Effective Time&#x201d;), each issued and outstanding share of Common Stock prior to the Effective Time, par value $0.0001 per share, of NIC (the &#x201c;NIC Common Stock&#x201d;) other than (i) shares of NIC Common Stock owned directly or indirectly by the Company, NIC or any of their respective subsidiaries immediately prior to the Effective Time, including shares of NIC held as treasury stock, (ii) shares of NIC Common Stock as to which dissenters&#x2019; rights have been properly perfected, and (iii) shares of NIC Common Stock covered by unvested NIC restricted stock awards) will be converted in the Merger into the right to receive $34.00 in cash, without interest (the &#x201c;Merger Consideration&#x201d;).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the terms of the Merger Agreement, the completion of the Merger is subject to certain customary closing conditions, including, among others: (i) adoption of the Merger Agreement by the affirmative vote of the holders of at least a majority of the voting power of the outstanding shares of NIC Common Stock; (ii) the accuracy of the parties&#x2019; respective representations and warranties in the Merger Agreement, subject to specified materiality qualifications; (iii) compliance by the parties with their respective covenants in the Merger Agreement in all material respects; (iv) the absence of any order restraining, enjoining, or otherwise prohibiting the consummation of the Merger; and (v) the expiration of the waiting period applicable to the Merger under the Hart-Scott-Rodino Antitrust Improvements Act of 1976, as amended.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Merger Consideration is expected to be financed with a combination of new debt and cash on the Company&#x2019;s balance sheet. In connection with its entry into the Merger Agreement, the Company obtained a commitment from Goldman Sachs Bank USA for a $1.6&#160;billion 364-day senior unsecured bridge loan facility, subject to customary conditions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Merger Agreement and the consummation of the transactions contemplated thereby have been unanimously approved by the NIC board of directors, and the NIC board of directors has resolved to recommend to the stockholders of NIC to adopt the Merger Agreement, subject to its terms and conditions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Merger Agreement provides that, at the Effective Time, with respect to NIC restricted stock awards, (i) each vested restricted stock award will be converted into the right to receive the Merger Consideration with respect to each share of NIC Common Stock subject to such awards, less applicable withholding of taxes and other authorized deductions, (ii) each outstanding unvested performance-based restricted stock award will automatically vest in full, in accordance with the terms of its award agreement, and be converted into the right to receive the Merger Consideration with respect to such number of shares of NIC Common Stock, less applicable withholding of taxes and other authorized deductions, and (iii) each outstanding unvested time-based restricted stock will be assumed by the Company and converted into corresponding awards relating to the Company&#x2019;s Common Stock in accordance with the terms set forth in the Merger Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Merger Agreement contains customary representations, warranties and covenants made by each of the Company, Merger Sub, and NIC, including, among others, covenants by NIC regarding the conduct of its business during the pendency of the transactions contemplated by the Merger Agreement, public disclosures and other matters. NIC is required, among other things, not to solicit alternative business combination transactions and, subject to certain exceptions, not to engage in discussions or negotiations regarding an alternative business combination transaction.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Both the Company and NIC may terminate the Merger Agreement under certain specified circumstances, including (i) if the Merger is not consummated by June 30, 2021, subject to an extension of up to three months in order to obtain required regulatory approval, (ii) if the approval of the NIC stockholders is not obtained, and (iii) if NIC&#x2019;s board makes an adverse recommendation change with respect to the proposed transaction or approve or recommend a superior acquisition proposal. In certain circumstances in connection with the termination of the Merger Agreement, including if NIC&#x2019;s board of directors changes or withdraws its recommendation of the Merger to its stockholders, fails to include its recommendation to shareholders in NIC&#x2019;s proxy statement, or terminates the Merger Agreement to enter into an agreement with respect to a &#x201c;superior proposal,&#x201d; NIC will be required to pay the Company a termination fee of $55&#160;million in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The foregoing description of the Merger Agreement does not purport to be complete and is qualified in its entirety by the full text of the Merger Agreement, a copy of which is filed as Exhibit 2.1 to our Form 8-K, dated February 10, 2021, is incorporated by reference herein.&lt;/span&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i7a521d97296e4b768a29218491f56763_I20210209"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzQ5NDc4MDIzNDUwNjA_ccae0681-e35d-41a8-8cba-b91e3317620a"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <tyl:BusinessAcquisitionOptionConversionPrice
      contextRef="i9d9aaefdf6614ee7a787f15a867e2ff1_I20210209"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzQ5NDc4MDIzNDUwNTI_126b79a7-b8af-4c37-914c-97562267d67c"
      unitRef="usdPerShare">34.00</tyl:BusinessAcquisitionOptionConversionPrice>
    <us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity
      contextRef="i940e5f8f5aaf4e33a5b7c91c0c91720f_I20210209"
      decimals="-8"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzE0MjkzNjUxMTgxMTc4_e0370b8f-544e-4662-bb46-5e5874a95e2d"
      unitRef="usd">1600000000</us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity>
    <us-gaap:DebtInstrumentTerm
      contextRef="i1148a91f539c4aafbd7013a9683e5513_D20210209-20210209"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzI3NDg3NzkwODk1NTY_b6dc317b-c470-4376-a850-1a09df50e8a9">P364D</us-gaap:DebtInstrumentTerm>
    <tyl:BusinessCombinationTerminationFee
      contextRef="i70b33b6ad040497281f685b30659ca9b_D20210209-20210209"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzgvZnJhZzowYjhjZWI2NzE5MjA0YzQ1OTNjYTAyODg4ZTlhNDMxNy90ZXh0cmVnaW9uOjBiOGNlYjY3MTkyMDRjNDU5M2NhMDI4ODhlOWE0MzE3XzQ5NDc4MDIzNDUwOTU_62e8dc52-e7f6-4a57-beb4-5d2ebfe27bea"
      unitRef="usd">55000000</tyl:BusinessCombinationTerminationFee>
    <us-gaap:QuarterlyFinancialInformationTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90ZXh0cmVnaW9uOjU4YTJmMzBkNDg0YTQ3NzNhNzRjZmU1ZTM0NWFhYjAzXzE4OQ_91a48571-35c9-4b2e-906b-62fe2671db7f">QUARTERLY FINANCIAL INFORMATION (unaudited)&lt;div style="margin-bottom:6pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table contains selected financial information from unaudited statements of income for each quarter of 2020 and 2019:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:11pt;margin-top:17pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.444%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.287%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Quarters Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Dec. 31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Sept. 30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;June 30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Mar. 31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Dec. 31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Sept. 30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;June 30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Mar. 31&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;283,285&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;285,746&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;271,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;276,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;288,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;275,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;275,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;247,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;138,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;143,509&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;131,203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;129,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;142,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;130,717&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;127,860&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;116,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Income before income taxes &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;48,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;49,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,811&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;34,883&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;47,790&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,552&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;36,419&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;35,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;54,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;39,284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;47,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;46,790&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;31,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;27,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Earnings per diluted share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.29&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;0.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;0.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;0.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Shares used in computing diluted&lt;br/&gt;&#160;&#160; earnings per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,925&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,606&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,736&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;39,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;39,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:QuarterlyFinancialInformationTextBlock>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock
      contextRef="i6230db87957f486bab11494ea334dfdc_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90ZXh0cmVnaW9uOjU4YTJmMzBkNDg0YTQ3NzNhNzRjZmU1ZTM0NWFhYjAzXzE4NA_5c8e0201-1cae-4749-a08f-22ac7ecda537">&lt;div style="margin-bottom:6pt;margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table contains selected financial information from unaudited statements of income for each quarter of 2020 and 2019:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:11pt;margin-top:17pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.444%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.282%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.287%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Quarters Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Dec. 31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Sept. 30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;June 30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Mar. 31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Dec. 31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Sept. 30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;June 30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Mar. 31&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;283,285&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;285,746&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;271,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;276,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;288,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;275,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;275,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;247,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;138,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;143,509&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;131,203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;129,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;142,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;130,717&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;127,860&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;116,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Income before income taxes &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;48,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;49,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,811&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;34,883&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;47,790&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,552&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;36,419&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;35,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;54,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;39,284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;53,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;47,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;46,790&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;31,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;27,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Earnings per diluted share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.29&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;0.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;1.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;0.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;0.69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Shares used in computing diluted&lt;br/&gt;&#160;&#160; earnings per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,925&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,606&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;41,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,736&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;40,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;39,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;39,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMS0xLTEtMA_2ef8d29a-6a0c-4369-93a8-36bfe7532961"
      unitRef="usd">283285000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMy0xLTEtMA_1579ecfb-82e2-4b9d-9aaa-a9760b32a22a"
      unitRef="usd">285746000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtNS0xLTEtMA_f93f3664-f2b6-41f2-b723-64a5ff53ffdb"
      unitRef="usd">271091000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtNy0xLTEtMA_442f3113-0a20-442e-b5e1-c81e97820760"
      unitRef="usd">276541000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtOS0xLTEtMA_0229c6c8-0afd-4453-86af-6847ba637e14"
      unitRef="usd">288837000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMTEtMS0xLTA_5b8f02c6-338a-4fdb-8b6b-8748df62a372"
      unitRef="usd">275400000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMTMtMS0xLTA_a87f6e25-5729-46ce-bb1f-aab23bf1d715"
      unitRef="usd">275124000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzMtMTUtMS0xLTA_46a56011-3292-4c57-aa0f-9b09f01102ee"
      unitRef="usd">247066000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMS0xLTEtMA_eade6634-84ef-4c66-816e-814e738bba85"
      unitRef="usd">138669000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMy0xLTEtMA_25f4bacb-916f-4aa8-9ca9-1dc8381cc71a"
      unitRef="usd">143509000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtNS0xLTEtMA_1bc45803-3ccd-4cbd-b60b-f2fd4e1095ac"
      unitRef="usd">131203000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtNy0xLTEtMA_0aead77d-2054-4d3b-956b-fd97ceceab04"
      unitRef="usd">129131000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtOS0xLTEtMA_e2199e92-78d3-47c8-b476-45b42e36fb98"
      unitRef="usd">142275000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMTEtMS0xLTA_c5f856e6-9535-47c5-bdfb-666f974b62f2"
      unitRef="usd">130717000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMTMtMS0xLTA_2766476d-d5c6-446b-8069-6074d7fc68ec"
      unitRef="usd">127860000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzQtMTUtMS0xLTA_f9a75f5e-466f-41c1-893c-f71a26e0af89"
      unitRef="usd">116048000</us-gaap:GrossProfit>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMS0xLTEtMA_acc76093-b972-42e1-bdfb-280af5c1d913"
      unitRef="usd">48412000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMy0xLTEtMA_47827042-a541-4d22-88d7-8c4b332eea17"
      unitRef="usd">49936000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtNS0xLTEtMA_ef502c2e-cbb4-4a62-b633-07d320e96c0b"
      unitRef="usd">41811000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtNy0xLTEtMA_4fb04beb-96c5-4b7b-b303-7a83d2275611"
      unitRef="usd">34883000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtOS0xLTEtMA_79af6782-1079-4887-a064-5987a0177ed5"
      unitRef="usd">47790000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMTEtMS0xLTA_d04e0d0d-e1aa-4568-92a3-cca97d0ac46d"
      unitRef="usd">40552000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMTMtMS0xLTA_66fc6763-c9a4-4f20-ab73-18564e06573c"
      unitRef="usd">36419000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzUtMTUtMS0xLTA_a9993933-cd74-44a5-8ccf-fc52b4be2d68"
      unitRef="usd">35077000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMS0xLTEtMA_d739db43-1ff3-4df5-a82f-771a949f3976"
      unitRef="usd">54094000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMy0xLTEtMA_753270f0-67b5-404e-b109-b3090f8ae628"
      unitRef="usd">39284000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtNS0xLTEtMA_5ef2d5d0-15f9-4b2e-9a9e-e0cb12cf21c5"
      unitRef="usd">53892000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtNy0xLTEtMA_ed7dd8c2-017b-4026-87a3-8aa629f10d76"
      unitRef="usd">47550000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtOS0xLTEtMA_de8bceaa-12ea-4a1d-9fc6-8ace687e7761"
      unitRef="usd">46790000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMTEtMS0xLTA_faca6040-f43c-4090-9f25-288a9b370c06"
      unitRef="usd">40390000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMTMtMS0xLTA_b601e956-715a-4df1-8ad5-6b55cab57f9c"
      unitRef="usd">31999000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzYtMTUtMS0xLTA_23832f2a-2ade-4821-b2ae-1ae10ea4c796"
      unitRef="usd">27348000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMS0xLTEtMA_93ce44b6-7d9c-4ae5-99e1-f654513f5a77"
      unitRef="usdPerShare">1.29</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMy0xLTEtMA_3f65a2ce-f426-47ee-bef4-444e3d2d4f78"
      unitRef="usdPerShare">0.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctNS0xLTEtMA_fc749a67-4d13-4784-ada6-55127f4d902a"
      unitRef="usdPerShare">1.30</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctNy0xLTEtMA_4554e9da-ab67-43b2-bfdd-fd069c575f3d"
      unitRef="usdPerShare">1.16</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctOS0xLTEtMA_08fe4caf-4254-48b5-b69b-118e5331f41c"
      unitRef="usdPerShare">1.15</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMTEtMS0xLTA_3ee0d65b-5db7-4c2c-adb9-7a7bca635713"
      unitRef="usdPerShare">1.00</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMTMtMS0xLTA_771cabea-e339-4a88-9596-68bd146c560c"
      unitRef="usdPerShare">0.80</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzctMTUtMS0xLTA_378df129-a15c-4850-bbb8-85c818c1b9fd"
      unitRef="usdPerShare">0.69</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMS0xLTEtMA_824dc42a-6f3f-42f4-a824-8b128314ce8b"
      unitRef="shares">41925000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i4dd4939787814ee1882916c40a917011_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMy0xLTEtMA_e5d9f46c-d317-42ec-bce3-8b7e1343fc59"
      unitRef="shares">41606000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="idd3d9c39092a4ac6b40d59f5f5e3d507_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtNS0xLTEtMA_e975a982-2990-4bd7-9003-44586f401cf5"
      unitRef="shares">41416000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i67985b892c5e447b8c4e9022207ddf33_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtNy0xLTEtMA_2be5b539-9f91-44ea-bc5e-f80be106ec5d"
      unitRef="shares">41144000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ibe4de73fa9044a469cb4c2129b441f9c_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtOS0xLTEtMA_87ea7f5e-ddb4-4ae2-9653-6d1bb2b36fb7"
      unitRef="shares">40736000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i05aa447738bd464d9b5c6061a52065ca_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMTEtMS0xLTA_50410db3-4bc8-40c1-94c3-2c9d473bad99"
      unitRef="shares">40280000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i11c1ebdb4da04b6c92df571a83dd783b_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMTMtMS0xLTA_e14e32ea-2af8-44bc-ae21-a7bfa6e37e8b"
      unitRef="shares">39813000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i1519abfd28974ee1a3fe3e9267946ca6_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xODEvZnJhZzo1OGEyZjMwZDQ4NGE0NzczYTc0Y2ZlNWUzNDVhYWIwMy90YWJsZTpkMzRiNjBjZjlmNjI0OWI4ODE5ODQ2Mzk2YmU3Y2VlNS90YWJsZXJhbmdlOmQzNGI2MGNmOWY2MjQ5Yjg4MTk4NDYzOTZiZTdjZWU1XzgtMTUtMS0xLTA_bc507893-b33f-4018-a781-763a70c4d35c"
      unitRef="shares">39585000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597008820696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Feb. 17, 2021</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [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_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,  2020<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_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="re">
<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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">TYLER TECHNOLOGIES, INC.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " 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</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, Street</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</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</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 each class</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 );">Name of each exchange on which registered</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_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</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_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " 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="ro">
<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="re">
<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="ro">
<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="re">
<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">$ 13,728,101,720<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">40,576,730<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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_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;11, 2021.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " 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_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2020<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_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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000860731<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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentAnnualReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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 YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentsIncorporatedByReferenceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Documents incorporated by reference.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-23<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentsIncorporatedByReferenceTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_IcfrAuditorAttestationFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596996315496">
<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, 2020</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_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,116,663<span></span>
</td>
<td class="nump">$ 1,086,427<span></span>
</td>
<td class="nump">$ 935,282<span></span>
</td>
</tr>
<tr class="re">
<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">574,151<span></span>
</td>
<td class="nump">569,527<span></span>
</td>
<td class="nump">495,704<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">542,512<span></span>
</td>
<td class="nump">516,900<span></span>
</td>
<td class="nump">439,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_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative expenses</a></td>
<td class="nump">259,561<span></span>
</td>
<td class="nump">257,746<span></span>
</td>
<td class="nump">207,605<span></span>
</td>
</tr>
<tr class="re">
<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">88,363<span></span>
</td>
<td class="nump">81,342<span></span>
</td>
<td class="nump">63,264<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,662<span></span>
</td>
<td class="nump">21,445<span></span>
</td>
<td class="nump">16,217<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">172,926<span></span>
</td>
<td class="nump">156,367<span></span>
</td>
<td class="nump">152,492<span></span>
</td>
</tr>
<tr class="ro">
<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">2,116<span></span>
</td>
<td class="nump">3,471<span></span>
</td>
<td class="nump">3,378<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">175,042<span></span>
</td>
<td class="nump">159,838<span></span>
</td>
<td class="nump">155,870<span></span>
</td>
</tr>
<tr class="ro">
<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 (benefit) provision</a></td>
<td class="num">(19,778)<span></span>
</td>
<td class="nump">13,311<span></span>
</td>
<td class="nump">8,408<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">$ 194,820<span></span>
</td>
<td class="nump">$ 146,527<span></span>
</td>
<td class="nump">$ 147,462<span></span>
</td>
</tr>
<tr class="ro">
<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">$ 4.87<span></span>
</td>
<td class="nump">$ 3.79<span></span>
</td>
<td class="nump">$ 3.84<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (USD per share)</a></td>
<td class="nump">$ 4.69<span></span>
</td>
<td class="nump">$ 3.65<span></span>
</td>
<td class="nump">$ 3.68<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">$ 73,164<span></span>
</td>
<td class="nump">$ 100,205<span></span>
</td>
<td class="nump">$ 93,441<span></span>
</td>
</tr>
<tr class="ro">
<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,339<span></span>
</td>
<td class="nump">3,938<span></span>
</td>
<td class="nump">3,802<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">350,648<span></span>
</td>
<td class="nump">296,352<span></span>
</td>
<td class="nump">220,547<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">186,409<span></span>
</td>
<td class="nump">213,061<span></span>
</td>
<td class="nump">191,269<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">467,513<span></span>
</td>
<td class="nump">430,318<span></span>
</td>
<td class="nump">384,521<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">31,962<span></span>
</td>
<td class="nump">30,642<span></span>
</td>
<td class="nump">22,972<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 );">Subscriptions, software services and 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_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">510,504<span></span>
</td>
<td class="nump">502,138<span></span>
</td>
<td class="nump">438,923<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">21,127<span></span>
</td>
<td class="nump">23,479<span></span>
</td>
<td class="nump">21,846<span></span>
</td>
</tr>
<tr class="ro">
<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,945<span></span>
</td>
<td class="nump">15,337<span></span>
</td>
<td class="nump">14,299<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">17,802<span></span>
</td>
<td class="nump">23,012<span></span>
</td>
<td class="nump">23,658<span></span>
</td>
</tr>
<tr class="re">
<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">$ 12,401<span></span>
</td>
<td class="nump">$ 17,472<span></span>
</td>
<td class="nump">$ 15,708<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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&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 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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1448-109256<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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<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=121326447&amp;loc=d3e1337-109256<br><br>Reference 7: 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=120380238&amp;loc=d3e4984-109258<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120380238&amp;loc=d3e3842-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22644-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1252-109256<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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=120380238&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120380238&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&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 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 10: 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 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1337-109256<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 8: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120385591&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120395209&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 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=120395209&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>15
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597027000664">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">$ 603,623<span></span>
</td>
<td class="nump">$ 232,682<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable (less allowance for losses and sales adjustments of $9,255 in 2020 and $5,738 in 2019)</a></td>
<td class="nump">382,319<span></span>
</td>
<td class="nump">374,089<span></span>
</td>
</tr>
<tr class="ro">
<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">72,187<span></span>
</td>
<td class="nump">39,399<span></span>
</td>
</tr>
<tr class="re">
<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">30,864<span></span>
</td>
<td class="nump">24,717<span></span>
</td>
</tr>
<tr class="ro">
<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">21,598<span></span>
</td>
<td class="nump">6,482<span></span>
</td>
</tr>
<tr class="re">
<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,479<span></span>
</td>
<td class="nump">2,328<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">1,113,070<span></span>
</td>
<td class="nump">679,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_AccountsReceivableNetNoncurrent', window );">Accounts receivable, long-term</a></td>
<td class="nump">21,417<span></span>
</td>
<td class="nump">22,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_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">18,734<span></span>
</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_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">168,004<span></span>
</td>
<td class="nump">171,861<span></span>
</td>
</tr>
<tr class="ro">
<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">838,428<span></span>
</td>
<td class="nump">840,117<span></span>
</td>
</tr>
<tr class="ro">
<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">331,189<span></span>
</td>
<td class="nump">378,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_Investments', window );">Non-current investments</a></td>
<td class="nump">82,640<span></span>
</td>
<td class="nump">42,235<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other non-current assets</a></td>
<td class="nump">33,792<span></span>
</td>
<td class="nump">37,366<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">2,607,274<span></span>
</td>
<td class="nump">2,191,614<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">14,011<span></span>
</td>
<td class="nump">14,977<span></span>
</td>
</tr>
<tr class="ro">
<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">83,084<span></span>
</td>
<td class="nump">75,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_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">5,904<span></span>
</td>
<td class="nump">6,387<span></span>
</td>
</tr>
<tr class="ro">
<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">461,278<span></span>
</td>
<td class="nump">412,495<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_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">564,277<span></span>
</td>
<td class="nump">509,093<span></span>
</td>
</tr>
<tr class="ro">
<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="re">
<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">100<span></span>
</td>
<td class="nump">199<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income taxes</a></td>
<td class="nump">40,507<span></span>
</td>
<td class="nump">48,442<span></span>
</td>
</tr>
<tr class="re">
<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,279<span></span>
</td>
<td class="nump">16,822<span></span>
</td>
</tr>
<tr class="ro">
<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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders' equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " 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="re">
<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 &#160;&#160; issued in 2020 and 2019</a></td>
<td class="nump">481<span></span>
</td>
<td class="nump">481<span></span>
</td>
</tr>
<tr class="ro">
<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">905,332<span></span>
</td>
<td class="nump">739,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_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="ro">
<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">1,112,156<span></span>
</td>
<td class="nump">917,336<span></span>
</td>
</tr>
<tr class="re">
<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; 7,608,627 and 8,839,352 shares in 2020 and 2019, respectively</a></td>
<td class="num">(31,812)<span></span>
</td>
<td class="num">(40,191)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders' equity</a></td>
<td class="nump">1,986,111<span></span>
</td>
<td class="nump">1,617,058<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Liabilities and Shareholders' equity, Total</a></td>
<td class="nump">$ 2,607,274<span></span>
</td>
<td class="nump">$ 2,191,614<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121593590&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121593590&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=120400017&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 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=120398452&amp;loc=d3e534808-122878<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121593590&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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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(30)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e637-108580<br><br>Reference 3: 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(a)(23)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669686-108580<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 7: 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=121641772&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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6801-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&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=121586364&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=121566466&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.(a),19)<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14326-108349<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121556615&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=121556615&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=121604090&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=121556615&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=121556615&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=121604090&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_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120406818&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=120406818&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&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_Investments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.1(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&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_Investments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 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)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 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(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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=121603541&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=121603541&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=121603541&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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=121566466&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=121566466&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6387103&amp;loc=d3e6435-108320<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 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)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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=120400017&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(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://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 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(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 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>16
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001889992">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">$ 9,255<span></span>
</td>
<td class="nump">$ 5,738<span></span>
</td>
</tr>
<tr class="re">
<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 (shares)</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 (shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized (shares)</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 (shares)</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">7,608,627<span></span>
</td>
<td class="nump">8,839,352<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121611835&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=121599878&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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 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>17
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001684104">
<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, 2020</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_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">$ 194,820<span></span>
</td>
<td class="nump">$ 146,527<span></span>
</td>
<td class="nump">$ 147,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_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">81,657<span></span>
</td>
<td class="nump">76,672<span></span>
</td>
<td class="nump">61,759<span></span>
</td>
</tr>
<tr class="re">
<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">67,365<span></span>
</td>
<td class="nump">59,967<span></span>
</td>
<td class="nump">52,740<span></span>
</td>
</tr>
<tr class="ro">
<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">3,517<span></span>
</td>
<td class="nump">1,636<span></span>
</td>
<td class="num">(569)<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,782<span></span>
</td>
<td class="nump">5,397<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_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax benefit</a></td>
<td class="num">(7,936)<span></span>
</td>
<td class="num">(6,088)<span></span>
</td>
<td class="num">(5,069)<span></span>
</td>
</tr>
<tr class="re">
<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 &#160;&#160; 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">(10,733)<span></span>
</td>
<td class="num">(65,738)<span></span>
</td>
<td class="num">(50,916)<span></span>
</td>
</tr>
<tr class="re">
<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">(15,117)<span></span>
</td>
<td class="num">(1,925)<span></span>
</td>
<td class="nump">6,642<span></span>
</td>
</tr>
<tr class="ro">
<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,304)<span></span>
</td>
<td class="num">(8,976)<span></span>
</td>
<td class="num">(588)<span></span>
</td>
</tr>
<tr class="re">
<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="num">(967)<span></span>
</td>
<td class="nump">7,403<span></span>
</td>
<td class="num">(2,416)<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,549)<span></span>
</td>
<td class="num">(6,113)<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_IncreaseDecreaseInAccruedLiabilities', window );">Accrued liabilities</a></td>
<td class="nump">2,870<span></span>
</td>
<td class="nump">1,516<span></span>
</td>
<td class="num">(2,445)<span></span>
</td>
</tr>
<tr class="ro">
<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">48,684<span></span>
</td>
<td class="nump">44,442<span></span>
</td>
<td class="nump">43,603<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">355,089<span></span>
</td>
<td class="nump">254,720<span></span>
</td>
<td class="nump">250,203<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">(22,690)<span></span>
</td>
<td class="num">(37,236)<span></span>
</td>
<td class="num">(27,424)<span></span>
</td>
</tr>
<tr class="ro">
<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">(156,618)<span></span>
</td>
<td class="num">(54,742)<span></span>
</td>
<td class="num">(115,625)<span></span>
</td>
</tr>
<tr class="re">
<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">82,742<span></span>
</td>
<td class="nump">70,796<span></span>
</td>
<td class="nump">81,205<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireEquityMethodInvestments', window );">Purchase of equity investment in common shares</a></td>
<td class="num">(10,000)<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_ProceedsFromSaleOfEquityMethodInvestments', window );">Proceeds from the sale of equity investment in preferred shares</a></td>
<td class="nump">15,000<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_PaymentsForSoftware', window );">Capitalized software development costs</a></td>
<td class="num">(5,776)<span></span>
</td>
<td class="num">(4,804)<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">(1,292)<span></span>
</td>
<td class="num">(218,734)<span></span>
</td>
<td class="num">(178,093)<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Decrease (increase) in other</a></td>
<td class="nump">314<span></span>
</td>
<td class="num">(295)<span></span>
</td>
<td class="nump">1,682<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">(98,320)<span></span>
</td>
<td class="num">(245,015)<span></span>
</td>
<td class="num">(238,255)<span></span>
</td>
</tr>
<tr class="ro">
<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="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_PaymentsForRepurchaseOfCommonStock', window );">Purchase of treasury shares</a></td>
<td class="num">(15,484)<span></span>
</td>
<td class="num">(17,786)<span></span>
</td>
<td class="num">(146,553)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Payment of contingent consideration</a></td>
<td class="num">(5,619)<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_ProceedsFromStockOptionsExercised', window );">Proceeds from exercise of stock options</a></td>
<td class="nump">124,363<span></span>
</td>
<td class="nump">96,908<span></span>
</td>
<td class="nump">74,907<span></span>
</td>
</tr>
<tr class="re">
<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">10,912<span></span>
</td>
<td class="nump">9,576<span></span>
</td>
<td class="nump">8,051<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_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided (used) by financing activities</a></td>
<td class="nump">114,172<span></span>
</td>
<td class="nump">88,698<span></span>
</td>
<td class="num">(63,595)<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">370,941<span></span>
</td>
<td class="nump">98,403<span></span>
</td>
<td class="num">(51,647)<span></span>
</td>
</tr>
<tr class="ro">
<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">232,682<span></span>
</td>
<td class="nump">134,279<span></span>
</td>
<td class="nump">185,926<span></span>
</td>
</tr>
<tr class="re">
<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">$ 603,623<span></span>
</td>
<td class="nump">$ 232,682<span></span>
</td>
<td class="nump">$ 134,279<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=121586364&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=121586364&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=121583591&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=121586364&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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=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=120311839&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_PaymentForContingentConsiderationLiabilityFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&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_PaymentForContingentConsiderationLiabilityFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=120395691&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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_PaymentsToAcquireEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 purchase of or advances to an equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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=121586364&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_PaymentsToAcquireEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121553693&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=121586364&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_ProceedsFromSaleOfEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 sale of equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&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_ProceedsFromSaleOfEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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=120381028&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=121586364&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=121586364&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=121599337&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=120395209&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=121586364&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=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=121586364&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>18
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597004997896">
<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>Cumulative Effect, Period of Adoption, Adjustment</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>Retained Earnings </div>
<div>Cumulative Effect, Period of Adoption, Adjustment</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, 2017</a></td>
<td class="nump">$ 1,191,736<span></span>
</td>
<td class="text">&#160;<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="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="nump">10,262<span></span>
</td>
</tr>
<tr class="re">
<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</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>
</tr>
<tr class="ro">
<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="text">&#160;<span></span>
</td>
<td class="nump">147,462<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance/ Exercise of stock options</a></td>
<td class="nump">$ 74,907<span></span>
</td>
<td class="text">&#160;<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="text">&#160;<span></span>
</td>
<td class="nump">$ 30,449<span></span>
</td>
</tr>
<tr class="ro">
<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/ Exercise of stock options (in 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,126<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation</a></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="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="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="text">&#160;<span></span>
</td>
<td class="nump">$ 681<span></span>
</td>
</tr>
<tr class="re">
<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 (in 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">45<span></span>
</td>
</tr>
<tr class="ro">
<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (150,050)<span></span>
</td>
</tr>
<tr class="re">
<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 (in 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="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="num">$ (1,116)<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">$ (1,116)<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="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="text">&#160;<span></span>
</td>
<td class="nump">9,872<span></span>
</td>
</tr>
<tr class="ro">
<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</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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingStandardsUpdateExtensibleList', window );">Accounting Standards Update</a></td>
<td class="text">us-gaap:AccountingStandardsUpdate201602Member<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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="text">&#160;<span></span>
</td>
<td class="nump">146,527<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance/ Exercise of stock options</a></td>
<td class="nump">$ 96,908<span></span>
</td>
<td class="text">&#160;<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="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/ Exercise of stock options (in 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="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 settlement</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="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 settlement (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="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="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="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="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 (in 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="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="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 (in 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="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="text">&#160;<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="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="nump">8,839<span></span>
</td>
</tr>
<tr class="ro">
<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</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>
</tr>
<tr class="re">
<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">194,820<span></span>
</td>
<td class="text">&#160;<span></span>
</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">194,820<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance/ Exercise of stock options</a></td>
<td class="nump">$ 124,363<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">90,636<span></span>
</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">$ 33,727<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance/ Exercise of stock options (in shares)</a></td>
<td class="nump">1,174<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,283<span></span>
</td>
</tr>
<tr class="ro">
<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 settlement</a></td>
<td class="num">$ (12,923)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ (12,923)<span></span>
</td>
</tr>
<tr class="re">
<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 settlement (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="num">(34)<span></span>
</td>
</tr>
<tr class="ro">
<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">67,365<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">67,365<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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">$ 10,912<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,853<span></span>
</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,059<span></span>
</td>
</tr>
<tr class="ro">
<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 (in shares)</a></td>
<td class="nump">40<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">40<span></span>
</td>
</tr>
<tr class="re">
<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">$ (15,484)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,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_TreasuryStockSharesAcquired', window );">Treasury stock purchases (in shares)</a></td>
<td class="num">(59)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(59)<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, 2020</a></td>
<td class="nump">$ 1,986,111<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 481<span></span>
</td>
<td class="nump">$ 905,332<span></span>
</td>
<td class="num">$ (46)<span></span>
</td>
<td class="nump">$ 1,112,156<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (31,812)<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, 2020</a></td>
<td class="text">&#160;<span></span>
</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="text">&#160;<span></span>
</td>
<td class="nump">7,609<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_AccountingStandardsUpdateExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amendment to accounting standards.</p></div>
<a 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 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121646688&amp;loc=SL121648383-210437<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121646688&amp;loc=SL121648383-210437<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=121646688&amp;loc=SL121648383-210437<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 24: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=121646688&amp;loc=SL121648383-210437<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121646688&amp;loc=SL121648383-210437<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121646688&amp;loc=SL121648383-210437<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingStandardsUpdateExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>srt-types:extensibleListItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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=120383193&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=120381028&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=120383193&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=121326096&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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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=120397183&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=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=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=120397183&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=120381028&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=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://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 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(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>19
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923306760">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">DESCRIPTION OF BUSINESS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Impact of the COVID-19 Pandemic</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In March 2020, the World Health Organization declared the outbreak of a COVID-19 pandemic ("COVID-19"), which continues to spread throughout the U.S. and the world and has resulted in authorities implementing numerous measures to contain the virus, including travel bans and restrictions, quarantines, shelter-in-place orders, and business limitations and shutdowns. </span><span style="color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While we </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">are unable to accurately predict the full impact that COVID-19 will have on our results from operations, financial condition, liquidity and cash flows due to numerous uncertainties, including the duration and severity of the pandemic and containment measures and associated compliance, the current environment has negatively impacted our revenues for fiscal year 2020. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Because an increasing portion of our revenues are considered recurring in nature, the effect of COVID-19 on our results of operations may also not be fully reflected for some time. We continue to see some impact on our business in the near term with delays in government procurement processes and uncertainty around public sector budgets, as well as delays in implementations caused by travel restrictions, closed offices, or clients shifting focus to more pressing issues. We have addressed those challenges through adapting the way we do business &#8211; encouraging web and video conferencing, conducting virtual sales demonstrations and delivering professional services remotely.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our priorities during this crisis are protecting the health and safety of our employees and our clients. Our IT systems and applications support a remote workforce. Prior to the pandemic, many of our employees worked remotely.  In response to the pandemic, we encouraged all employees who are able to do so to work from home, equipping them with resources necessary to continue uninterrupted. We were able to transition the vast majority of our employees to this work-from-home posture. This reduces the number of team members in our offices to those uniquely needed for essential on-site services, such as network operations support staff, and allows for &#8220;social distancing&#8221; as directed by the Centers for Disease Control ("CDC").</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The pandemic has delayed some government procurement processes and is expected to impact our ability to complete certain implementations, negatively impacting our revenue. It could also negatively impact the timing of client payments to us. We continue to monitor these trends in order to respond to the ever-changing impact of COVID-19 on our clients and Tyler&#8217;s operations.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the twelve months ended December&#160;31, 2020, the impact of the COVID-19 pandemic resulted in lower revenues from software licenses, software services, appraisal services, and other revenues. Lower software licenses compared to prior periods are attributed to slower sales cycles as government procurement processes are delayed and contract signings have been pushed to future periods. Software services and appraisal services revenue declines are attributed to delays in implementations caused by travel restrictions and shelter-in-place orders in effect during the period. Other revenues were lower compared to prior periods primarily as a result of the cancellation of our 2020 Connect user conference. Lower revenues compared to prior periods were offset by cost savings attributed to lower spend on travel, user conferences and trade show expenses, health claims and other employee-related expenses. If, and as travel restrictions are relaxed, we expect software services and appraisal services revenues to increase as the limited number of our clients who require that all or a portion of their services be delivered onsite will be able to receive those services. Also, we are adapting by changing the way we do business, encouraging web and video conferencing, conducting virtual sales demonstrations and delivering professional services remotely, which result in increases in staff utilization rates and billable time.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues from subscriptions and maintenance, which we consider recurring in nature, comprised 73% of our total consolidated revenue for the twelve months ended December&#160;31, 2020, and include transaction-based revenue streams such as e-filing and online payments. As of December&#160;31, 2020, we had $758.5 million in cash and investments and no outstanding borrowings under our credit facility. We also have substantial additional liquidity available through our undrawn $400 million credit facility, which can be expanded through an accordion feature.  During the second quarter of 2020, we completed our annual assessment of goodwill which did not result in an impairment charge. Since our assessment in the second quarter of 2020, we identified no indicators of impairment to goodwill; therefore, we have recorded no impairment as of and for the period ended December&#160;31, 2020. We identified no indicators of impairment to long-lived and other assets and therefore, no impairment was recorded as of and for the period ended December&#160;31, 2020. However, due to significant uncertainty surrounding COVID-19 and market conditions, there are no assurances conditions will not deteriorate in the future.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PRINCIPLES OF CONSOLIDATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements include our parent company and eleven 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 and other comprehensive income. We had no items of other comprehensive income during the years ended December 31, 2020, 2019, and 2018.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CASH AND CASH EQUIVALENTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">REVENUE RECOGNITION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Nature of Products and Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Identification of the contract, or contracts, with a customer</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Identification of the performance obligations in the contract</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Determination of the transaction price</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Allocation of the transaction price to the performance obligations in the contract</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Recognition of revenue when, or as, we satisfy a performance obligation</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Software Arrangements:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software Licenses and Royalties</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 adjusted if needed, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Post-Contract Customer Support</span></div><div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Computer Hardware Equipment</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Subscription-Based Services:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NTQ_08918ce7-ad26-42b7-86b9-69235399badb">three</span> to five years or longer in length and billed annually in advance.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 services ratably over the term of the arrangement, which range from <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMjg_6534193c-8989-4ffa-9739-99f420f614b6">one</span> to ten years, but are typically for a period of <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzI_08918ce7-ad26-42b7-86b9-69235399badb">three</span> to five years. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other transaction-based fees primarily 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For e-filing transaction fees and certain 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Appraisal Services:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For our property appraisal projects, we recognize revenue using the progress-to-completion method since many of these projects are executed over <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEyMDA2_9f4088ec-ac39-4e93-acc6-7f71ad2066bc">one</span> to three-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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Significant Judgments:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Contract Balances:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Accounts receivable and allowance for losses and sales adjustments</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 5% and 20% 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, and December&#160;31, 2019, total current and long-term accounts receivable, net of allowance for losses and sales adjustments, was $403.7 million and $396.5 million, respectively. We have recorded unbilled receivables of $140.8 million and $134.0 million at December&#160;31, 2020, and December&#160;31, 2019, respectively. Included in unbilled receivables are retention receivables of $13.1 million at December&#160;31, 2020, and December&#160;31, 2019, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within 30 to 90 days. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We maintain allowances for losses and sales adjustments, which losses are recorded against revenue at the time the loss is incurred. Since most of our clients are domestic governmental entities, we rarely incur a credit loss resulting from the inability of a client to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for losses and sales  adjustments may require revision, include, but are not limited to, managing our client&#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. Our allowance for losses and sales adjustments of $9.3 million and $5.7 million at December&#160;31, 2020, and December&#160;31, 2019, respectively, does not include provisions for credit losses. As of January 1, 2020, we adopted ASU 2016-13 and primarily evaluated our historical experience with credit losses related to trade and other receivables. Because we have not experienced any historical credit losses with the majority of our clients, we have no basis to record a reserve for credit losses as defined by the standard.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the changes in the allowance for losses and sales adjustments:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.722%"><tr><td style="width:1.0%"/><td style="width:62.243%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.630%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.630%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.631%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,738&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,647&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,427&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provisions for losses and sales adjustments - accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,517&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(569)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Collections of accounts previously written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(545)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(211)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,255&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,738&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,647&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:15pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Deferred Revenue</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Deferred Commissions </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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&#160;<span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDg1_ec9a6f16-bae1-475d-873b-a2db6cd27396">three</span> to seven years. 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 one year. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;USE OF ESTIMATES</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 allowance for losses and sales adjustments; 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PROPERTY AND EQUIPMENT, NET</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">RESEARCH AND DEVELOPMENT COSTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We expensed research and development expense of $88.4 million in 2020, $81.3 million in 2019, and $63.3 million in 2018.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INCOME TAXES</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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".</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SHARE-BASED COMPENSATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzM5_742741b4-d349-4bdd-bcc2-2875ba4c7867">three</span> to six years of continuous service from the date of grant and have a contractual term of 10 years. Restricted stock unit grants generally vest ratably over&#160;<span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDkx_687d0a58-f81d-42cd-a498-8c22c9cbf84c">three</span> to five years 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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Compensation</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. See Note 9 &#8211; &#8220;Share-Based Compensation&#8221; for further information. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GOODWILL AND OTHER INTANGIBLE ASSETS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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, an impairment charge is recorded against goodwill for the amount of that excess. The impairment is limited to the amount of goodwill in that reporting unit. 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.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As part of our annual impairment test, our qualitative assessments included our estimated effects of COVID-19 for all reporting units except for the data and insights reporting unit. As a result of these qualitative assessments, we determined that it was not more likely than not that an impairment existed; therefore, we did not perform a Step 1 quantitative impairment test. We did perform a quantitative assessment for goodwill of $75.7 million associated with our data and insights business unit and concluded no impairment existed as of our annual assessment date. For most of our reporting units, goodwill relates to a combination of legacy and acquired businesses and as a result those units have fair values that substantially exceed their underlying carrying values. For other reporting units, in particular our platform technologies and data and insights units, goodwill entirely relates to recently acquired businesses, and as a result those units do not have significant excess fair values over carrying values. The platform technologies and data and insights business units combined goodwill was $152.0 million, or 18%, of total goodwill as of December&#160;31, 2020. Our annual goodwill impairment analysis did not result in an impairment charge. During 2020, we have recorded no impairment to goodwill as no triggering events or changes in circumstances indicating a potential impairment have occurred as of period-end. However, due to significant uncertainty surrounding COVID-19 and market conditions, there are no assurances conditions will not deteriorate in the future.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Determining the fair value of our reporting units involves the use of significant estimates and assumptions and considerable management judgment. We base our fair value estimates on assumptions we believe to be reasonable at the time, but such assumptions are subject to inherent uncertainty. Changes in market conditions or other factors outside of our control, such as a worsening of expected impact of COVID-19, could cause us to change key assumptions and our judgment about a reporting unit&#8217;s prospects. Similarly, in a specific period, a reporting unit could significantly underperform relative to its historical or projected future operating results. Either situation could result in a meaningfully different estimate of the fair value of our reporting units, and a consequent future impairment charge. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no impairments to goodwill in any of the periods presented.&#160;See Note 4 - "Goodwill and Other Intangible Assets" for additional information. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Other Intangible Assets</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 no impairments of intangible assets in any of the periods presented.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">IMPAIRMENT OF LONG-LIVED ASSETS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 disposal group classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There was no impairment of long-lived assets in any of the periods presented.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">COSTS OF COMPUTER SOFTWARE</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. During the twelve months period ended December&#160;31, 2020 and 2019, respectively, we capitalized approximately $5.8 million and $4.8 million 2019 of software development costs. 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, five years. Amortization of software development costs was approximately $1.2 million in 2020 and $0.3 million in 2019, 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><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONTINGENT PURCHASE CONSIDERATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">FAIR VALUE OF FINANCIAL INSTRUMENTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we have $154.8 million in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from 2021 through 2028.&#160;We intend to hold these bonds to maturity and have classified them as such. We believe cost approximates fair value because of the relatively short duration of these investments. 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 other observable market data. These investments are presented at amortized cost and are included in short-term investments and non-current investments in the accompanying condensed consolidated balance sheets.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we have an accrued interest receivable balance of  approximately $896,000 which is included in accounts receivable, net. We do not measure an allowance for credit losses for accrued interest receivables. We record any losses within the maturity period of the investment and any write-offs to accrued interest receivables are recorded as a reduction to interest income in the period of the loss. During the twelve months ended December&#160;31, 2020, we have recorded no credit losses. Interest income and amortization of discounts and premiums are included in other income, net in the accompanying consolidated statements of income.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2020, we sold our $15.0 million investment in convertible preferred stock representing a 20% interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings to BFTR, LLC, a wholly owned subsidiary of Bison Capital Partners V L.P. During the same period, we purchased $10.0 million in common stock representing a 18% interest in BFTR, LLC. The investment in common 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. Periodically, our cost method investments are assessed 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. No events or changes in circumstances have occurred during the period that require reassessment.  There has been no 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONCENTRATIONS OF CREDIT RISK </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020, we had cash and cash equivalents of $603.6 million. We perform periodic evaluations of the credit standing of these financial institutions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We maintain allowances for losses and sales adjustments, 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 losses and sales adjustments 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="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">LEASES</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INDEMNIFICATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">RECLASSIFICATIONS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain amounts for previous years have been reclassified to conform to the current year presentation. As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;T segments have been adjusted to reflect the segment change. See Note 14 - "Segment and Related Information" for additional information. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2016, the FASB issued ASU 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financial Instruments - Credit Losses,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#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, available for-sale debt securities, 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 an 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 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.  As of January 1, 2020, we adopted the new standard with no material impact of credit losses to our trade and other receivables, held-to-maturity debt securities and retained earnings included in our condensed consolidated financial statements.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">O</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">n January 26, 2017, the FASB issued ASU No. 2017-04, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Simplifying the Test for Goodwill Impairment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The new standard eliminates Step 2 from the goodwill impairment test. An entity should recognize a goodwill impairment charge for the amount by which the carrying amount exceeds the reporting unit's fair value. This standard is effective for public business entities in fiscal years beginning after December 15, 2019, and the standard was adopted and applied prospectively by the Company as of January 1, 2020, but it did not have a significant impact on the Company's financial statements and disclosures.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NEW ACCOUNTING PRONOUNCEMENTS</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2019, the FASB issued ASU 2019-12,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Simplifying the Accounting for Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, ("ASU 2019-12") which simplifies the accounting for income taxes, eliminates certain exceptions within ASC 740, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, and clarifies certain aspects of the current guidance to promote consistency among reporting entities. The new standard is effective for fiscal years beginning after December 15, 2020. Most amendments within the standard are required to be applied on a prospective basis, while certain amendments must be applied on a retrospective or modified retrospective basis. We do not expect adoption of this standard to have a material effect on our consolidated financial statements.</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_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>20
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994399832">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">ACQUISITIONS<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">2019</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 $20.4 million paid in cash. </span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, our final valuation of the fair market value of CHT's assets and liabilities resulted in the adjustment to the preliminary opening balance sheet. These adjustments related to an increased allocation to customer related intangibles and reduction to goodwill of approximately $1.7 million.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 28, 2019, we acquired all of the capital stock of MP Holdings Parent, Inc. dba MicroPact ("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 $2.0 million, was approximately $201.8 million consisting of $198.2 million&#160;paid in cash. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, we paid $5.6 million in contingent consideration. We have no contingent consideration accrued as of December&#160;31, 2020.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 $3.7 million in cash.</span></div><div style="margin-bottom:9pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, the purchase price allocations for CHT, MicroPact and MyCivic are complete. Our balance sheet as of December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The operating results of all 2019 acquisitions are included with the operating results of the Enterprise Software segment since their date of acquisition. In 2019, we incurred fees of approximately $1.1 million 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><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>21
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994544920">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">PROPERTY AND EQUIPMENT, NET &#160;<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net consists of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Useful<br/>Lives<br/>(years)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Land</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,653&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,653&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Building and leasehold improvements</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5-39</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">147,729&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">137,448&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Computer equipment and purchased software</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3-5</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">108,571&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">99,435&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Furniture and fixtures</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">30,666&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">28,506&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Transportation equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">295&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">402&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">305,914&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">284,444&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated depreciation and amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(137,910)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(112,583)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">168,004&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">171,861&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense was $25.5 million in 2020, $23.4 million in 2019, and $21.2 million in 2018.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We paid $9.9 million and $20.8 million for real estate and the expansion of existing buildings in 2020 and 2019, respectively.</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 asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI http://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923307880">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">GOODWILL AND OTHER INTANGIBLE ASSETS<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying amount of goodwill for the two years ended December&#160;31, 2020 are as follows:</span></div><div style="margin-bottom:14pt;margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.233%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.983%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.983%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2018</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">739,550&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">14,168&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">753,718&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill acquired related to the purchase of MicroPact</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76,319&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76,319&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill acquired related to other acquisitions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,080&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,080&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2019</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">825,949&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">14,168&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">840,117&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchase price adjustments related to CHT acquisition</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,689)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,689)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">824,260&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">14,168&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">838,428&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other intangible assets and related accumulated amortization consists of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.983%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.012%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross carrying amount of other intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Customer related intangibles</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">322,619&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">321,019&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Acquired software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">262,286&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">262,286&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capitalized software development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,581&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,804&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leases acquired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">623,428&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">616,051&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated amortization</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(292,239)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(237,137)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total other intangibles, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">331,189&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">378,914&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 $55.1 million in 2020, $52.8 million in 2019, and $39.6 million in 2018.&#160;</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amortization periods of other intangible assets is summarized in the following table:</span></div><div style="margin-bottom:5pt;margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"><tr><td style="width:1.0%"/><td style="width:34.235%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.100%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Amortization<br/>Period</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Amortization</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Amortization<br/>Period</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Amortization</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-amortizable intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">838,428&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">840,117&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortizable intangibles:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Customer related intangibles</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">322,619&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">116,609&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">321,019&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">97,320&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Acquired software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">262,286&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">162,378&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">262,286&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">130,416&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,366&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capitalized software development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,581&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,460&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,804&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leases acquired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,426&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimated annual amortization expense related to acquired leases will be recorded as a reduction to hardware and other revenue and is expected to be $525,000 in 2021, $525,000 in 2022, $525,000 in 2023, $525,000 in 2024, $397,000 in 2025, and $114,000 thereafter</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">. </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs. Capitalized software in progress of $4.5 million has been excluded from the estimated annual amortization expense table below:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:62.777%"><tr><td style="width:1.0%"/><td style="width:84.961%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.839%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">54,411&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">50,713&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">32,562&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">31,978&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">30,622&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">123,805&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">324,091&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>23
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994725544">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">ACCRUED LIABILITIES<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consist of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:70.427%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.791%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accrued wages, bonuses and commissions</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">63,814&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49,126&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other accrued liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,270&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">26,108&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">83,084&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">75,234&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923332744">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">REVOLVING LINE OF CREDIT<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September&#160;30, 2019, we entered into a $400 million 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 unsecured revolving credit in an aggregate principal amount of up to&#160;$400 million, including a $25 million sublimit for letters of credit. The Credit Facility matures on September&#160;30, 2024. Borrowings under the Credit Facility may be used for general corporate purposes, including working capital requirements, acquisitions and share repurchases.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 0.125% to 0.75% or (2) the 30, 60, 90 or 180-day LIBOR rate plus a margin of 1.125% to 1.75%.&#160; As of December&#160;31, 2020, our interest rate was 3.38% under the prime rate option or approximately 1.27% 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 December&#160;31, 2020, we were in compliance with those covenants.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2020, we had no outstanding borrowings and had unused borrowing capacity of $400 million under the Credit Facility</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> In addition, as of December&#160;31, 2020, we had one outstanding standalone letter of credit totaling $2 million in favor of a client contract. The letter of credit guarantees our performance under the contract and expires in 2021.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We paid interest of $610,000 in 2020, $1,750,000 in 2019, and $770,000 in 2018.</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>25
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923281928">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">INCOME TAX  Income tax (benefit) provision on income from operations consists of the following:<div style="margin-bottom:14pt;margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(10,538)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,814&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,110&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,304)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,585&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,367&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(11,842)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,399&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,477&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(7,936)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(6,088)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(5,069)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,778)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,311&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,408&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Reconciliation of the U.S. statutory income tax rate to our effective income tax expense rate for operations follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Federal income tax expense at statutory rate</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,759&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">33,566&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">32,733&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">State income tax, net of federal income tax benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,677&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,999&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,953&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net operating loss carryback</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3,445)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Excess tax benefits of share-based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(60,190)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(29,819)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(32,487)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adjustments from the 2017 Tax Cuts and Jobs Act </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,750)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Tax credits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3,867)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3,446)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3,715)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-deductible business expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,199&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,011&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,655&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">89&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,778)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,311&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,408&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Coronavirus Aid, Relief and Economic Security ("CARES") Act, which was signed into law on March 27, 2020, provides an estimated $2.2 trillion to fight the COVID-19 pandemic and stimulate the U.S. economy. The assistance includes tax relief and government loans, and investments and grants for entities in affected industries (e.g., health care, airlines). </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The business tax provisions of the CARES Act include temporary changes to income and non-income based tax laws, including the ability to utilize net operating losses, interest expense deductions, alternative minimum tax credit refunds, charitable contributions, and depreciation of qualified improvement property. Measures not related to income-based taxes include (1) allowing an employer to pay its share of Social Security payroll taxes that would otherwise be due from the date of enactment through December 31, 2020, over the following two years and (2) allowing eligible employers subject to closure due to the COVID-19 pandemic to receive a 50% credit on qualified wages against their employment taxes each quarter, with any excess credits eligible for refunds.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The most significant provision of the CARES Act impacting our accounting for income taxes is the five-year carryback allowance for taxable net operating losses generated in tax years in which the statutory federal income tax rate is 21.0%, to periods in which the statutory federal income tax rate is 35.0%. We intend to carry back our 2020 taxable loss into our 2015 tax year, which results in a $3.4 million income tax benefit in the current year.</span></div><div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The tax effects of the major items recorded as deferred tax assets and liabilities as of December 31 are:</span></div><div style="margin-bottom:14pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.983%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.012%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred income tax assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating expenses not currently deductible</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,084&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,214&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock option and other employee benefit plans</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,446&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,308&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Loss and credit carryforwards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27,199&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,841&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,729&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,363&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,490)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,923)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax assets, net of valuation allowance</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">52,239&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">51,440&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred income tax liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(76,766)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(84,019)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,918)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,265)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Prepaid expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(6,869)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(4,922)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">807&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,676)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(92,746)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(99,882)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net deferred income tax liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(40,507)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(48,442)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had federal net operating loss carryforwards of approximately $81.5 million, after-tax state net operating loss carryforwards of approximately $3.5 million, and tax credit carryforwards of approximately $8.6 million.  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 2021 if not utilized.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the acquisition of Socrata in 2018, we recorded a $1.9 million 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 2020.  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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 February&#160;19, 2021, no significant adjustments have been proposed by any taxing jurisdiction.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We paid income taxes, net of refunds received, of $3.3 million in 2020, $21.3 million in 2019, and $6.8 million in 2018.</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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32857-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330215-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32809-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923341416">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">SHAREHOLDERS&#8217; EQUITY<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table details activity in our common stock:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"><tr><td style="width:1.0%"/><td style="width:34.235%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.100%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock option exercises</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,174&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">124,363&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">999&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">96,908&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,126&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">74,907&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchases of common stock</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(59)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,484)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(72)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(14,289)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(781)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(150,050)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Employee stock plan purchases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,912&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,576&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">45&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,051&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Restricted stock units vested, net of withheld shares upon award settlement</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(12,923)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(5,361)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of February&#160;19, 2021, we had authorization from our board of directors to repurchase up to 2.5 million 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://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(e)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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>27
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994524680">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">SHARE-BASED COMPENSATION<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Compensation Plan</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During fiscal year&#160;2020, 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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzgwMw_9c8021d3-ecd5-465d-842a-27ecc42ff8e3">three</span> to six years of continuous service from the date of grant and have a contractual term of&#160;10 years. 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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNTEvZnJhZzo1MWNhY2M2MGJmNTU0OWE2YmYwNzJiNWFkMjYwYWJiMi90ZXh0cmVnaW9uOjUxY2FjYzYwYmY1NTQ5YTZiZjA3MmI1YWQyNjBhYmIyXzEwOTA_687d0a58-f81d-42cd-a498-8c22c9cbf84c">three</span> to five years 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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Compensation</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, there were 2.5 million shares available for future grants under the plan from the 22.9 million shares previously approved by the shareholders.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Determining Fair Value of Stock Compensation</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 zero in the Black-Scholes option valuation model.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following weighted average assumptions were used for options granted:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected life (in years)</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5.0</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6.0</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected volatility</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">26.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">26.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Risk-free interest rate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected forfeiture rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Award Activity</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes restricted stock unit and performance stock unit activity during fiscal year 2020 (shares in thousands):</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:56.944%"><tr><td style="width:1.0%"/><td style="width:57.436%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.019%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.412%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.019%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.414%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Number of Shares</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value per Share</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at January 1, 2019</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">334&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">221.25&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">256&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">241.19&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(76)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">221.15&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(14)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">229.75&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at December 31, 2019</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">500&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">231.57&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">204&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">379.94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(110)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">232.59&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">266.94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at December 31, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">587&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">282.45&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Options granted, exercised, forfeited and expired are summarized as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:52.307%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.030%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Number of<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual Life<br/>(Years)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Aggregate<br/>Intrinsic Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2017</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,817&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">107.91&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">432&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">208.21&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,126)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66.53&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(31)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">158.80&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2018</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,092&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">129.51&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">162&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">251.58&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(999)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">96.92&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(29)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">174.54&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2019</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,226&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">145.27&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">128&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">403.99&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,174)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">105.97&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">165.93&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,177&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">181.63&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">554,709&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercisable at December 31, 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,424&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">155.06&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">400,814&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We had unvested options to purchase approximately 752,000 shares with a weighted average grant date exercise price of $231.93 as of December&#160;31, 2020, and unvested options to purchase approximately 1.2 million shares with a weighted average grant date exercise price of $188.48 as of December&#160;31, 2019. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other information pertaining to option activity was as follows during the twelve months ended December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average grant-date fair value of stock options granted</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">98.69&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">74.54&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66.52&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total intrinsic value of stock options exercised</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">292,394&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">155,899&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">176,716&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Compensation Expense</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of subscriptions, software services and maintenance  </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,125&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,002&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,588&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49,240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">44,965&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,152&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total share-based compensation expenses</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">67,365&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">59,967&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">52,740&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Excess tax benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(60,190)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(29,819)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(32,487)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net decrease in net income</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,175&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">30,148&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">20,253&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we had $164.0 million 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 3.12 years.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Employee Stock Purchase Plan</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under our Employee Stock Purchase Plan (&#8220;ESPP&#8221;) participants may contribute up to 15% of their annual compensation to purchase common shares of Tyler. The purchase price of the shares is equal to 85% of the closing price of Tyler shares on the last day of each quarterly offering period. As of December&#160;31, 2020, there were 664,000 shares available for future issuances under the ESPP from the 2.0 million 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>28
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994374344">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">EARNINGS PER SHARE<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic earnings and diluted earnings per share data were computed as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Numerator for basic and diluted earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">194,820&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">146,527&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">147,462&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted-average basic common shares outstanding</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,035&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,640&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,445&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Assumed conversion of dilutive securities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Share-based awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,491&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,465&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,678&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Denominator for diluted earnings per share</span></div><div style="text-indent:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160; - Adjusted weighted-average shares</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,526&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,105&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,123&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Earnings per common share:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Basic</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.87&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.79&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.84&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.69&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.65&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.68&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div>Share-based awards representing the right to purchase common stock of 132,000 shares in 2020, 633,000 shares in 2019, and 888,000 shares in 2018 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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994962840">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 one year to seven years.&#160;Some of these leases include options to extend for up to 10 years. We had&#160;no finance leases and no related party lease agreements as of December&#160;31, 2020. Operating lease costs were approximately $10.2 million in 2020, $9.9 million in 2019, and $7.4 million in 2018. </span></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of operating lease expense were as follows (in thousands):</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:83.750%"><tr><td style="width:1.0%"/><td style="width:19.961%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.629%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:42.017%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.629%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.649%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.463%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.652%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Lease Costs</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Financial Statement Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,524&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,379&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,940&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,269&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Variable lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,760&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,224&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,922&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 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="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:75.000%"><tr><td style="width:1.0%"/><td style="width:58.344%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.725%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.974%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.281%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.976%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,734&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,992&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases, short-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,904&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,387&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases, long-term</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16,279&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16,822&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,183&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,209&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental information related to leases was as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"><tr><td style="width:1.0%"/><td style="width:60.739%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.651%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.787%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.333%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.790%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other Information</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Cash Flows </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands):</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash paid amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating cash outflows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,131&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,267&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,524&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Lease Term and Discount Rate:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average remaining lease term (years)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.28&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of&#160;December&#160;31, 2020, maturities of lease liabilities were as follows (in thousands):</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:66.111%"><tr><td style="width:1.0%"/><td style="width:70.328%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.270%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:26.002%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Year ending December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,015&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,853&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,826&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,337&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,198&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,537&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,766&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Less: Interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,583)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Present value of operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,183&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rental Income from third parties</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 2021 and 2025, some of which have options to extend the lease for up to&#160;five years. 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="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Rental income from third-party tenants was $1.1 million in 2020, $1.1 million in 2019, and $1.2 million in 2018. 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="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:72.083%"><tr><td style="width:1.0%"/><td style="width:64.410%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.148%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:32.042%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Year ending December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,372&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,402&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,432&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,462&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">858&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,526&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 one year to seven years.&#160;Some of these leases include options to extend for up to 10 years. We had&#160;no finance leases and no related party lease agreements as of December&#160;31, 2020. Operating lease costs were approximately $10.2 million in 2020, $9.9 million in 2019, and $7.4 million in 2018. </span></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of operating lease expense were as follows (in thousands):</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:83.750%"><tr><td style="width:1.0%"/><td style="width:19.961%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.629%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:42.017%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.629%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.649%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.463%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.652%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Lease Costs</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Financial Statement Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,524&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,379&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,940&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,269&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Variable lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,760&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,224&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,922&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 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="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:75.000%"><tr><td style="width:1.0%"/><td style="width:58.344%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.725%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.974%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.281%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.976%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,734&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,992&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases, short-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,904&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,387&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases, long-term</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16,279&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16,822&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,183&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,209&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental information related to leases was as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"><tr><td style="width:1.0%"/><td style="width:60.739%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.651%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.787%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.333%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.790%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other Information</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Cash Flows </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands):</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash paid amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating cash outflows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,131&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,267&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,524&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Lease Term and Discount Rate:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average remaining lease term (years)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.28&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of&#160;December&#160;31, 2020, maturities of lease liabilities were as follows (in thousands):</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:66.111%"><tr><td style="width:1.0%"/><td style="width:70.328%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.270%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:26.002%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Year ending December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,015&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,853&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,826&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,337&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,198&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,537&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,766&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Less: Interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,583)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Present value of operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,183&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rental Income from third parties</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 2021 and 2025, some of which have options to extend the lease for up to&#160;five years. 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="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Rental income from third-party tenants was $1.1 million in 2020, $1.1 million in 2019, and $1.2 million in 2018. 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="margin-bottom:5pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:72.083%"><tr><td style="width:1.0%"/><td style="width:64.410%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.148%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:32.042%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Year ending December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,372&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,402&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,432&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,462&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">858&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,526&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, 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=121580752&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=121580752&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>30
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994501800">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement 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">EMPLOYEE BENEFIT PLANSWe provide a defined contribution plan for the majority of our employees meeting minimum service requirements. Eligible employees can contribute up to 30% of their current compensation to the plan subject to certain statutory limitations.&#160;We contribute up to a maximum of 3% of an employee&#8217;s compensation to the plan.&#160;We made contributions to the plan and charged operating results $12.7 million in 2020, $11.5 million in 2019, and $9.3 million in 2018.<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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923058088">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">COMMITMENTS AND CONTINGENCIES<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Security Incident</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September 29, 2020, we filed a Current Report on Form 8-K reporting a security incident (the "Incident") involving ransomware disrupting access to some of our internal IT systems and telephone systems. There is no evidence that the environments where we host client applications were affected, and our hosting services to those clients were not interrupted.  There is also no evidence of malicious activity on client networks associated with the Incident. We contained the Incident and recovered from it, resuming normal operations with our clients. We will continue to deploy supplemental remediation efforts as necessary. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As part of our immediate response to the Incident, we (1) shut down points of access to external systems and began investigating and remediating the problem; (2) engaged outside IT security and forensics experts to conduct a detailed review and help securely restore </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">affected systems; (3) implemented targeted monitoring systems to supplement the systems we already had in place; and (4) notified law enforcement. We have cooperated with their investigation throughout. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We promptly notified our clients of the Incident and provided timely updates to our clients through direct communications and updates to our website. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Although we believe we have contained and recovered from the Incident, and that we have taken and will continue to take appropriate remediation steps, we are subject to risk and uncertainties as a result of the Incident. We believe we are in the final phases of our investigation, but there can be no assurance as to what the ongoing impact of the Incident will be, if any. The Incident caused an interruption in parts of our business. We have made insurance claims for lost revenue related to the Incident, (primarily software services revenue) for the year ended December 31, 2020. Insurance reimbursements pertaining to lost revenue represent a contingent gain and any recovery of these revenues will be recorded when received. We do not expect such gains to be material. We incurred $4.2 million in costs associated with the Incident as of December&#160;31, 2020. As of</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> December 31, 2020, we have recorded </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$1.1 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of accrued insurance recoveries and received </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$2.4 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of insurance recoveries related to the Incident. The recorded costs consisted primarily of payments to third-party service providers and consultants, including legal fees, and enhancements to our cybersecurity measures.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> It is expected that we will continue to incur costs related to our response, remediation, and investigatory efforts relating to the Incident. We maintain cybersecurity insurance coverage in an amount that we believe is adequate.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Litigation</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><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><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559207&amp;loc=d3e25336-109308<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559207&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923304056">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">SEGMENT AND RELATED INFORMATION<div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We provide integrated information management solutions and services for the public sector, with a focus on local governments.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We provide our software systems and services and appraisal services through six business units, which focus on the following products:</span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">financial management, education and planning, regulatory and maintenance software solutions;</span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions;</span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">courts and justice and public safety software solutions; </span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">data and insights solutions;</span></div><div style="padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">platform technologies; and</span></div><div style="margin-bottom:9pt;padding-left:56.25pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">appraisal and tax software solutions and property appraisal services.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In accordance with ASC 280-10, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Segment Reporting</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, we report our results in two segments. 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 platform technologies solutions unit meet the criteria for aggregation and are presented in one 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 platform technologies 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, land and vital records management 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 style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. Due to the shelter-in-place orders caused by the COVID-19 pandemic, we cancelled our company-wide user conference for the current year. 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="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;T segments have been adjusted to reflect the segment change.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Segment assets primarily consist of net accounts receivable, prepaid expenses and other current assets and net property and equipment, and capitalized software development costs.&#160;Corporate assets primarily consist of cash and investments, prepaid insurance, intangibles associated with acquisitions, deferred income taxes and net property and equipment mainly related to unallocated information and technology assets.</span></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ES segment capital expenditures included $6.6 million in 2020 and $12.6 million in 2019 for the expansion of existing buildings and purchases of buildings and land.&#160;A&amp;T segment capital expenditures included $3.3 million in 2020 and $8.2 million in 2019 for the expansion of existing buildings.&#160;</span></div><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:52.307%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.030%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,200&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,964&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">73,164&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">326,284&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">24,364&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">164,520&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,889&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">429,224&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,289&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,670&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,131)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,020,959&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,824&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,120)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">67,411&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,055&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,191&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">81,657&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">285,271&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27,383&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(86,104)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">226,550&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11,099&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,823&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,826&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,748&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">847,672&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">94,149&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,665,453&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,607,274&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:52.307%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.030%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">90,808&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">279,282&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,070&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">179,865&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">33,196&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">393,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,797&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16,553&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">203&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,256&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,290&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">206&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,496)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">975,319&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">120,348&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,240)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,245&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">970&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11,457&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76,672&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">255,365&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">26,918&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(73,829)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">208,454&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,283&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,436&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,379&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,098&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">833,203&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">91,343&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,267,068&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,191,614&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:52.307%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.030%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018 </span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">81,299&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,142&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">93,441&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">205,193&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,354&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">161,612&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">29,657&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">349,387&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,134&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,387&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">390&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,881&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,764&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">391&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13,155)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">828,642&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,914&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(8,274)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49,921&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,123&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,715&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">61,759&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">231,819&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">28,434&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(68,572)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,681&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,918&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,241&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,973&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">25,132&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">554,960&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,810&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,171,193&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,790,963&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:84.444%"><tr><td style="width:1.0%"/><td style="width:61.235%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.622%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.577%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.622%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.577%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.622%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.745%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Reconciliation of reportable segment operating</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">income to the Company's consolidated totals:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total segment operating income</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">226,550&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">208,454&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,681&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of acquired software</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(31,962)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(30,642)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(22,972)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of customer and trade name intangibles</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(21,662)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(21,445)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(16,217)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other income, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,116&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,471&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,378&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">175,042&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">159,838&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">155,870&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 34<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8981-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8721-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8844-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 12: 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 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8657-108599<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8721-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<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>33
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923332184">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">DISAGGREGATION OF REVENUE<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timing of Revenue Recognition</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:49.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.170%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.309%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.855%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">62,029&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11,135&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">73,164&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">79,831&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,036,832&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:49.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.170%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.309%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.855%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">84,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">107,912&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">978,515&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.083%"><tr><td style="width:1.0%"/><td style="width:50.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.638%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.638%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.634%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">75,188&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,253&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">93,441&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">98,846&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">836,436&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recurring Revenue </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwMQ_f227370c-2237-429d-ad5d-84836ff26078">one</span> to 10 years but are typically contracted for initial periods of <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg2OA_bbe6fc68-13b7-4abb-8c69-8e3ba541aaec">three</span> to five years. Non-recurring revenues are derived from all other revenue categories.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="margin-bottom:5pt;margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.958%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">755,508&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">62,652&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">818,160&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">246,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">52,102&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">298,503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,061&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,131)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,020,959&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,824&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,120)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.958%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">672,804&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,866&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">726,670&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">287,225&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66,276&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,256&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">359,757&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,290&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">206&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,496)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">975,319&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">120,348&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,240)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.370%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.574%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.395%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.514%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">554,581&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">50,488&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">605,069&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">261,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,035&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,881&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">330,213&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,764&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">391&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13,155)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">828,642&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,914&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(8,274)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div>DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS<div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.138%"><tr><td style="width:1.0%"/><td style="width:50.979%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.871%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise Software</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">422,742&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">375,838&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,945&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,487&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,691&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,369&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">461,378&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">412,694&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.000%"><tr><td style="width:1.0%"/><td style="width:74.892%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.792%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.916%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">412,694&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferral of revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,094,185&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recognition of deferred revenue</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,045,501)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">461,378&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Transaction Price Allocated to the Remaining Performance Obligations</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020 was $1.59 billion, of which we expect to recognize approximately 49% as revenue over the next 12 months and the remainder thereafter.</span></div>DEFERRED COMMISSIONSSales 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 generally <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM0OA_aaa61222-6e5a-41d4-8f6e-bd9f0f649267">three</span> to seven years. Deferred commissions were&#160;$32.3 million, $29.8 million, as of December&#160;31, 2020, and 2019 respectively. Amortization expense was&#160;$11.9 million,&#160;$11.5 million, and $9.6 million for the&#160;twelve months ended December&#160;31, 2020, 2019, and 2018, 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></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><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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130551-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 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130556-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 5: 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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130550-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 7: 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 12<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 8: 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 12<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130558-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-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_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>34
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994593816">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">DISAGGREGATION OF REVENUE<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timing of Revenue Recognition</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:49.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.170%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.309%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.855%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">62,029&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11,135&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">73,164&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">79,831&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,036,832&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:49.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.170%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.309%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.855%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">84,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">107,912&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">978,515&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.083%"><tr><td style="width:1.0%"/><td style="width:50.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.638%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.638%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.634%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">75,188&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,253&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">93,441&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">98,846&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">836,436&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recurring Revenue </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwMQ_f227370c-2237-429d-ad5d-84836ff26078">one</span> to 10 years but are typically contracted for initial periods of <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg2OA_bbe6fc68-13b7-4abb-8c69-8e3ba541aaec">three</span> to five years. Non-recurring revenues are derived from all other revenue categories.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="margin-bottom:5pt;margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.958%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">755,508&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">62,652&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">818,160&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">246,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">52,102&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">298,503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,061&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,131)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,020,959&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,824&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,120)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.958%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">672,804&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,866&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">726,670&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">287,225&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66,276&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,256&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">359,757&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,290&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">206&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,496)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">975,319&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">120,348&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,240)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.370%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.574%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.395%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.514%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">554,581&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">50,488&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">605,069&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">261,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,035&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,881&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">330,213&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,764&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">391&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13,155)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">828,642&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,914&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(8,274)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div>DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS<div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.138%"><tr><td style="width:1.0%"/><td style="width:50.979%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.871%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise Software</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">422,742&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">375,838&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,945&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,487&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,691&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,369&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">461,378&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">412,694&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.000%"><tr><td style="width:1.0%"/><td style="width:74.892%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.792%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.916%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">412,694&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferral of revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,094,185&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recognition of deferred revenue</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,045,501)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">461,378&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Transaction Price Allocated to the Remaining Performance Obligations</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020 was $1.59 billion, of which we expect to recognize approximately 49% as revenue over the next 12 months and the remainder thereafter.</span></div>DEFERRED COMMISSIONSSales 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 generally <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM0OA_aaa61222-6e5a-41d4-8f6e-bd9f0f649267">three</span> to seven years. Deferred commissions were&#160;$32.3 million, $29.8 million, as of December&#160;31, 2020, and 2019 respectively. Amortization expense was&#160;$11.9 million,&#160;$11.5 million, and $9.6 million for the&#160;twelve months ended December&#160;31, 2020, 2019, and 2018, 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></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><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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130551-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 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130556-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 5: 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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130550-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 7: 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 12<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 8: 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 12<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130558-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-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_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>35
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994608856">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">DISAGGREGATION OF REVENUE<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timing of Revenue Recognition</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:49.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.170%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.309%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.855%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">62,029&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11,135&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">73,164&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">79,831&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,036,832&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:49.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.170%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.309%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.855%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">84,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">107,912&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">978,515&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.083%"><tr><td style="width:1.0%"/><td style="width:50.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.638%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.638%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.634%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">75,188&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,253&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">93,441&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">98,846&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">836,436&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recurring Revenue </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzgwMQ_f227370c-2237-429d-ad5d-84836ff26078">one</span> to 10 years but are typically contracted for initial periods of <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNjkvZnJhZzoyM2M5NTZkMTk2NWM0YjM4YWYyZjk2OTdkOGYyODVhZS90ZXh0cmVnaW9uOjIzYzk1NmQxOTY1YzRiMzhhZjJmOTY5N2Q4ZjI4NWFlXzg2OA_bbe6fc68-13b7-4abb-8c69-8e3ba541aaec">three</span> to five years. Non-recurring revenues are derived from all other revenue categories.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="margin-bottom:5pt;margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.958%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">755,508&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">62,652&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">818,160&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">246,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">52,102&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">298,503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,061&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,131)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,020,959&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,824&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,120)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.958%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">672,804&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,866&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">726,670&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">287,225&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66,276&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,256&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">359,757&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,290&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">206&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,496)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">975,319&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">120,348&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,240)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.370%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.574%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.395%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.514%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">554,581&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">50,488&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">605,069&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">261,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,035&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,881&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">330,213&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,764&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">391&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13,155)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">828,642&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,914&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(8,274)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div>DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS<div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.138%"><tr><td style="width:1.0%"/><td style="width:50.979%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.871%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise Software</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">422,742&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">375,838&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,945&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,487&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,691&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,369&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">461,378&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">412,694&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.000%"><tr><td style="width:1.0%"/><td style="width:74.892%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.792%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.916%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">412,694&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferral of revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,094,185&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recognition of deferred revenue</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,045,501)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">461,378&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Transaction Price Allocated to the Remaining Performance Obligations</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020 was $1.59 billion, of which we expect to recognize approximately 49% as revenue over the next 12 months and the remainder thereafter.</span></div>DEFERRED COMMISSIONSSales 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 generally <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xNzUvZnJhZzo3ZGUyMjhlYmUyMmI0YzE1YjQ3OTg3ZTlhYmI4M2QzNi90ZXh0cmVnaW9uOjdkZTIyOGViZTIyYjRjMTViNDc5ODdlOWFiYjgzZDM2XzM0OA_aaa61222-6e5a-41d4-8f6e-bd9f0f649267">three</span> to seven years. Deferred commissions were&#160;$32.3 million, $29.8 million, as of December&#160;31, 2020, and 2019 respectively. Amortization expense was&#160;$11.9 million,&#160;$11.5 million, and $9.6 million for the&#160;twelve months ended December&#160;31, 2020, 2019, and 2018, 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></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><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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130551-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 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130556-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 5: 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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130550-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 7: 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 12<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 8: 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 12<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130558-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-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_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>36
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001421592">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following events or transactions have occurred subsequent to December&#160;31, 2020.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">NIC, Inc.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 9, 2021, Tyler Technologies, Inc. (the &#8220;Company&#8221;) entered into an Agreement and Plan of Merger (the &#8220;Merger Agreement&#8221;) by and among the Company, Topos Acquisition, Inc., a Delaware corporation and wholly owned subsidiary of the Company (&#8220;Merger Sub&#8221;), and NIC Inc., a Delaware corporation (&#8220;NIC&#8221;). Pursuant to the Merger Agreement, and upon the terms and subject to the conditions therein, Merger Sub will merge with and into NIC (the &#8220;Merger&#8221;), with NIC surviving the Merger and continuing as a wholly owned subsidiary of the Company</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:120%">.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subject to the terms and conditions of the Merger Agreement, at the effective time of the Merger (the &#8220;Effective Time&#8221;), each issued and outstanding share of Common Stock prior to the Effective Time, par value $0.0001 per share, of NIC (the &#8220;NIC Common Stock&#8221;) other than (i) shares of NIC Common Stock owned directly or indirectly by the Company, NIC or any of their respective subsidiaries immediately prior to the Effective Time, including shares of NIC held as treasury stock, (ii) shares of NIC Common Stock as to which dissenters&#8217; rights have been properly perfected, and (iii) shares of NIC Common Stock covered by unvested NIC restricted stock awards) will be converted in the Merger into the right to receive $34.00 in cash, without interest (the &#8220;Merger Consideration&#8221;).</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the terms of the Merger Agreement, the completion of the Merger is subject to certain customary closing conditions, including, among others: (i) adoption of the Merger Agreement by the affirmative vote of the holders of at least a majority of the voting power of the outstanding shares of NIC Common Stock; (ii) the accuracy of the parties&#8217; respective representations and warranties in the Merger Agreement, subject to specified materiality qualifications; (iii) compliance by the parties with their respective covenants in the Merger Agreement in all material respects; (iv) the absence of any order restraining, enjoining, or otherwise prohibiting the consummation of the Merger; and (v) the expiration of the waiting period applicable to the Merger under the Hart-Scott-Rodino Antitrust Improvements Act of 1976, as amended.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Merger Consideration is expected to be financed with a combination of new debt and cash on the Company&#8217;s balance sheet. In connection with its entry into the Merger Agreement, the Company obtained a commitment from Goldman Sachs Bank USA for a $1.6&#160;billion 364-day senior unsecured bridge loan facility, subject to customary conditions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Merger Agreement and the consummation of the transactions contemplated thereby have been unanimously approved by the NIC board of directors, and the NIC board of directors has resolved to recommend to the stockholders of NIC to adopt the Merger Agreement, subject to its terms and conditions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Merger Agreement provides that, at the Effective Time, with respect to NIC restricted stock awards, (i) each vested restricted stock award will be converted into the right to receive the Merger Consideration with respect to each share of NIC Common Stock subject to such awards, less applicable withholding of taxes and other authorized deductions, (ii) each outstanding unvested performance-based restricted stock award will automatically vest in full, in accordance with the terms of its award agreement, and be converted into the right to receive the Merger Consideration with respect to such number of shares of NIC Common Stock, less applicable withholding of taxes and other authorized deductions, and (iii) each outstanding unvested time-based restricted stock will be assumed by the Company and converted into corresponding awards relating to the Company&#8217;s Common Stock in accordance with the terms set forth in the Merger Agreement.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Merger Agreement contains customary representations, warranties and covenants made by each of the Company, Merger Sub, and NIC, including, among others, covenants by NIC regarding the conduct of its business during the pendency of the transactions contemplated by the Merger Agreement, public disclosures and other matters. NIC is required, among other things, not to solicit alternative business combination transactions and, subject to certain exceptions, not to engage in discussions or negotiations regarding an alternative business combination transaction.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Both the Company and NIC may terminate the Merger Agreement under certain specified circumstances, including (i) if the Merger is not consummated by June 30, 2021, subject to an extension of up to three months in order to obtain required regulatory approval, (ii) if the approval of the NIC stockholders is not obtained, and (iii) if NIC&#8217;s board makes an adverse recommendation change with respect to the proposed transaction or approve or recommend a superior acquisition proposal. In certain circumstances in connection with the termination of the Merger Agreement, including if NIC&#8217;s board of directors changes or withdraws its recommendation of the Merger to its stockholders, fails to include its recommendation to shareholders in NIC&#8217;s proxy statement, or terminates the Merger Agreement to enter into an agreement with respect to a &#8220;superior proposal,&#8221; NIC will be required to pay the Company a termination fee of $55&#160;million in cash.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The foregoing description of the Merger Agreement does not purport to be complete and is qualified in its entirety by the full text of the Merger Agreement, a copy of which is filed as Exhibit 2.1 to our Form 8-K, dated February 10, 2021, is incorporated by reference herein.</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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>37
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994402072">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:6pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table contains selected financial information from unaudited statements of income for each quarter of 2020 and 2019:</span></div><div style="margin-bottom:11pt;margin-top:17pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.444%"><tr><td style="width:1.0%"/><td style="width:26.694%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.287%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Quarters Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Dec. 31</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Sept. 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mar. 31</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Dec. 31</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Sept. 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mar. 31</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">283,285&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">285,746&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">271,091&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">276,541&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">288,837&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">275,400&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">275,124&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">247,066&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">138,669&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">143,509&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">131,203&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">129,131&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">142,275&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">130,717&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">127,860&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">116,048&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income before income taxes </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">48,412&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49,936&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,811&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">34,883&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">47,790&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,552&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,419&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,077&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">54,094&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,284&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,892&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">47,550&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">46,790&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">31,999&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27,348&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Earnings per diluted share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.29&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.30&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.16&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.15&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.00&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.80&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.69&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares used in computing diluted<br/>&#160;&#160; earnings per share</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,925&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,606&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,416&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,144&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,736&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,280&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,813&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,585&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>38
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997959816">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">PRINCIPLES OF CONSOLIDATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements include our parent company and eleven 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 and other comprehensive income. We had no items of other comprehensive income during the years ended December 31, 2020, 2019, and 2018.</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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CASH AND CASH EQUIVALENTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">REVENUE RECOGNITION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Nature of Products and Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Identification of the contract, or contracts, with a customer</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Identification of the performance obligations in the contract</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Determination of the transaction price</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Allocation of the transaction price to the performance obligations in the contract</span></div><div style="margin-bottom:9pt;margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Recognition of revenue when, or as, we satisfy a performance obligation</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Software Arrangements:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software Licenses and Royalties</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 adjusted if needed, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Software Services</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Post-Contract Customer Support</span></div><div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Computer Hardware Equipment</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Subscription-Based Services:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzg2NTQ_08918ce7-ad26-42b7-86b9-69235399badb">three</span> to five years or longer in length and billed annually in advance.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 services ratably over the term of the arrangement, which range from <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzMjg_6534193c-8989-4ffa-9739-99f420f614b6">one</span> to ten years, but are typically for a period of <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzkzNzI_08918ce7-ad26-42b7-86b9-69235399badb">three</span> to five years. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other transaction-based fees primarily 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For e-filing transaction fees and certain 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Appraisal Services:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For our property appraisal projects, we recognize revenue using the progress-to-completion method since many of these projects are executed over <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzEyMDA2_9f4088ec-ac39-4e93-acc6-7f71ad2066bc">one</span> to three-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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Significant Judgments:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Contract Balances:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Accounts receivable and allowance for losses and sales adjustments</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 5% and 20% 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, and December&#160;31, 2019, total current and long-term accounts receivable, net of allowance for losses and sales adjustments, was $403.7 million and $396.5 million, respectively. We have recorded unbilled receivables of $140.8 million and $134.0 million at December&#160;31, 2020, and December&#160;31, 2019, respectively. Included in unbilled receivables are retention receivables of $13.1 million at December&#160;31, 2020, and December&#160;31, 2019, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within 30 to 90 days. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We maintain allowances for losses and sales adjustments, which losses are recorded against revenue at the time the loss is incurred. Since most of our clients are domestic governmental entities, we rarely incur a credit loss resulting from the inability of a client to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for losses and sales  adjustments may require revision, include, but are not limited to, managing our client&#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. Our allowance for losses and sales adjustments of $9.3 million and $5.7 million at December&#160;31, 2020, and December&#160;31, 2019, respectively, does not include provisions for credit losses. As of January 1, 2020, we adopted ASU 2016-13 and primarily evaluated our historical experience with credit losses related to trade and other receivables. Because we have not experienced any historical credit losses with the majority of our clients, we have no basis to record a reserve for credit losses as defined by the standard.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the changes in the allowance for losses and sales adjustments:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.722%"><tr><td style="width:1.0%"/><td style="width:62.243%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.630%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.630%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.631%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,738&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,647&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,427&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provisions for losses and sales adjustments - accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,517&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(569)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Collections of accounts previously written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(545)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(211)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,255&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,738&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,647&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:15pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Deferred Revenue</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Deferred Commissions </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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&#160;<span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzIyNDg1_ec9a6f16-bae1-475d-873b-a2db6cd27396">three</span> to seven years. 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 one year. 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 ESTIMATESThe 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 allowance for losses and sales adjustments; 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></span>
</td>
</tr>
<tr class="ro">
<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">PROPERTY AND EQUIPMENT, NETProperty, 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_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INCOME TAXES</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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".</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_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-Based Compensation</a></td>
<td class="text">SHARE-BASED COMPENSATIONWe 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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3MzM5_742741b4-d349-4bdd-bcc2-2875ba4c7867">three</span> to six years of continuous service from the date of grant and have a contractual term of 10 years. Restricted stock unit grants generally vest ratably over&#160;<span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjhiNzA0OGQ5MjgyYjQ5ODA4YzliMGRjNDY2MjJlNmYzL3NlYzo4YjcwNDhkOTI4MmI0OTgwOGM5YjBkYzQ2NjIyZTZmM18xMjQvZnJhZzo5MTE3MTFlMjY5Nzk0MTJkYjk3YjQ2NGVkNmNlZjBlZC90ZXh0cmVnaW9uOjkxMTcxMWUyNjk3OTQxMmRiOTdiNDY0ZWQ2Y2VmMGVkXzI3NDkx_687d0a58-f81d-42cd-a498-8c22c9cbf84c">three</span> to five years 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.<span></span>
</td>
</tr>
<tr class="re">
<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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">GOODWILL AND OTHER INTANGIBLE ASSETS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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, an impairment charge is recorded against goodwill for the amount of that excess. The impairment is limited to the amount of goodwill in that reporting unit. 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.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As part of our annual impairment test, our qualitative assessments included our estimated effects of COVID-19 for all reporting units except for the data and insights reporting unit. As a result of these qualitative assessments, we determined that it was not more likely than not that an impairment existed; therefore, we did not perform a Step 1 quantitative impairment test. We did perform a quantitative assessment for goodwill of $75.7 million associated with our data and insights business unit and concluded no impairment existed as of our annual assessment date. For most of our reporting units, goodwill relates to a combination of legacy and acquired businesses and as a result those units have fair values that substantially exceed their underlying carrying values. For other reporting units, in particular our platform technologies and data and insights units, goodwill entirely relates to recently acquired businesses, and as a result those units do not have significant excess fair values over carrying values. The platform technologies and data and insights business units combined goodwill was $152.0 million, or 18%, of total goodwill as of December&#160;31, 2020. Our annual goodwill impairment analysis did not result in an impairment charge. During 2020, we have recorded no impairment to goodwill as no triggering events or changes in circumstances indicating a potential impairment have occurred as of period-end. However, due to significant uncertainty surrounding COVID-19 and market conditions, there are no assurances conditions will not deteriorate in the future.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Determining the fair value of our reporting units involves the use of significant estimates and assumptions and considerable management judgment. We base our fair value estimates on assumptions we believe to be reasonable at the time, but such assumptions are subject to inherent uncertainty. Changes in market conditions or other factors outside of our control, such as a worsening of expected impact of COVID-19, could cause us to change key assumptions and our judgment about a reporting unit&#8217;s prospects. Similarly, in a specific period, a reporting unit could significantly underperform relative to its historical or projected future operating results. Either situation could result in a meaningfully different estimate of the fair value of our reporting units, and a consequent future impairment charge. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no impairments to goodwill in any of the periods presented.&#160;See Note 4 - "Goodwill and Other Intangible Assets" for additional information. </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">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="ro">
<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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">IMPAIRMENT OF LONG-LIVED ASSETS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 disposal group classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There was no impairment of long-lived assets 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_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy', window );">Costs of Computer Software</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">COSTS OF COMPUTER SOFTWARE</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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. During the twelve months period ended December&#160;31, 2020 and 2019, respectively, we capitalized approximately $5.8 million and $4.8 million 2019 of software development costs. 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, five years. Amortization of software development costs was approximately $1.2 million in 2020 and $0.3 million in 2019, 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="ro">
<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><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONTINGENT PURCHASE CONSIDERATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="re">
<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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">FAIR VALUE OF FINANCIAL INSTRUMENTS</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020, 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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we have $154.8 million in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from 2021 through 2028.&#160;We intend to hold these bonds to maturity and have classified them as such. We believe cost approximates fair value because of the relatively short duration of these investments. 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 other observable market data. These investments are presented at amortized cost and are included in short-term investments and non-current investments in the accompanying condensed consolidated balance sheets.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2020, we have an accrued interest receivable balance of  approximately $896,000 which is included in accounts receivable, net. We do not measure an allowance for credit losses for accrued interest receivables. We record any losses within the maturity period of the investment and any write-offs to accrued interest receivables are recorded as a reduction to interest income in the period of the loss. During the twelve months ended December&#160;31, 2020, we have recorded no credit losses. Interest income and amortization of discounts and premiums are included in other income, net in the accompanying consolidated statements of income.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2020, we sold our $15.0 million investment in convertible preferred stock representing a 20% interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings to BFTR, LLC, a wholly owned subsidiary of Bison Capital Partners V L.P. During the same period, we purchased $10.0 million in common stock representing a 18% interest in BFTR, LLC. The investment in common 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. Periodically, our cost method investments are assessed 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. No events or changes in circumstances have occurred during the period that require reassessment.  There has been no 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="ro">
<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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONCENTRATIONS OF CREDIT RISK </span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020, we had cash and cash equivalents of $603.6 million. We perform periodic evaluations of the credit standing of these financial institutions.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 December&#160;31, 2020.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We maintain allowances for losses and sales adjustments, 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 losses and sales adjustments 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="re">
<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="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">LEASES</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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>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></span>
</td>
</tr>
<tr class="ro">
<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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INDEMNIFICATION</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="re">
<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">RECLASSIFICATIONSCertain amounts for previous years have been reclassified to conform to the current year presentation. As of January 1, 2020, the land and vital records management business unit, which was previously reported in the ES segment, was moved to the A&amp;T segment to reflect changes in the way in which management makes operating decisions, allocates resources, and manages the growth and profitability of the Company. Prior year amounts for the ES and A&amp;T segments have been adjusted to reflect the segment change. See Note 14 - "Segment and Related Information" for additional information.<span></span>
</td>
</tr>
<tr class="ro">
<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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2016, the FASB issued ASU 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financial Instruments - Credit Losses,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#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, available for-sale debt securities, 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 an 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 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.  As of January 1, 2020, we adopted the new standard with no material impact of credit losses to our trade and other receivables, held-to-maturity debt securities and retained earnings included in our condensed consolidated financial statements.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">O</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">n January 26, 2017, the FASB issued ASU No. 2017-04, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Simplifying the Test for Goodwill Impairment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The new standard eliminates Step 2 from the goodwill impairment test. An entity should recognize a goodwill impairment charge for the amount by which the carrying amount exceeds the reporting unit's fair value. This standard is effective for public business entities in fiscal years beginning after December 15, 2019, and the standard was adopted and applied prospectively by the Company as of January 1, 2020, but it did not have a significant impact on the Company's financial statements and disclosures.</span></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NEW ACCOUNTING PRONOUNCEMENTS</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2019, the FASB issued ASU 2019-12,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Simplifying the Accounting for Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, ("ASU 2019-12") which simplifies the accounting for income taxes, eliminates certain exceptions within ASC 740, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, and clarifies certain aspects of the current guidance to promote consistency among reporting entities. The new standard is effective for fiscal years beginning after December 15, 2020. Most amendments within the standard are required to be applied on a prospective basis, while certain amendments must be applied on a retrospective or modified retrospective basis. We do not expect adoption of this standard to have a material effect on our consolidated financial statements.</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_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=121583591&amp;loc=d3e4273-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><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 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 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=121572278&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=121556970&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 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=120406818&amp;loc=d3e32247-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32847-109319<br><br>Reference 3: 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 4: 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 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32840-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116657188&amp;loc=SL116659661-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=120406818&amp;loc=d3e32280-109318<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32809-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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=121609121&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 reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.</p></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 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 asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 5: 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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130561-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 20<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130566-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 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130563-203045<br><br>Reference 4: 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><br>Reference 5: 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 20<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130566-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130563-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18823-107790<br><br>Reference 8: 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 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130566-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130564-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130566-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_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=120381028&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>39
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923406680">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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 );">Allowance for credit loss rollfoward</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the changes in the allowance for losses and sales adjustments:</span></div><div style="margin-bottom:9pt;margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.722%"><tr><td style="width:1.0%"/><td style="width:62.243%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.630%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.630%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.631%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,738&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,647&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,427&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provisions for losses and sales adjustments - accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,517&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(569)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Collections of accounts previously written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(545)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(211)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,255&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,738&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,647&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>40
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994299912">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net consists of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Useful<br/>Lives<br/>(years)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Land</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,653&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,653&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Building and leasehold improvements</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5-39</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">147,729&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">137,448&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Computer equipment and purchased software</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3-5</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">108,571&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">99,435&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Furniture and fixtures</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">30,666&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">28,506&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Transportation equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">295&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">402&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">305,914&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">284,444&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated depreciation and amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(137,910)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(112,583)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">168,004&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">171,861&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>41
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596996248424">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying amount of goodwill for the two years ended December&#160;31, 2020 are as follows:</span></div><div style="margin-bottom:14pt;margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.233%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.983%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.983%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2018</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">739,550&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">14,168&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">753,718&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill acquired related to the purchase of MicroPact</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76,319&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76,319&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill acquired related to other acquisitions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,080&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,080&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2019</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">825,949&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">14,168&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">840,117&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchase price adjustments related to CHT acquisition</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,689)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,689)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance as of 12/31/2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">824,260&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">14,168&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">838,428&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Summary of other intangible assets and related accumulated amortization</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other intangible assets and related accumulated amortization consists of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.983%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.012%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross carrying amount of other intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Customer related intangibles</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">322,619&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">321,019&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Acquired software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">262,286&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">262,286&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capitalized software development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,581&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,804&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leases acquired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">623,428&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">616,051&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated amortization</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(292,239)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(237,137)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total other intangibles, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">331,189&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">378,914&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amortization periods of other intangible assets is summarized in the following table:</span></div><div style="margin-bottom:5pt;margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"><tr><td style="width:1.0%"/><td style="width:34.235%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.100%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Amortization<br/>Period</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Amortization</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Amortization<br/>Period</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Amortization</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-amortizable intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Goodwill</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">838,428&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">840,117&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortizable intangibles:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Customer related intangibles</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">322,619&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">116,609&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">321,019&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">97,320&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Acquired software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">262,286&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">162,378&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">262,286&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">130,416&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,366&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capitalized software development costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,581&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,460&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,804&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leases acquired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,426&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9 years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Summary of estimated annual amortization expense</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs. Capitalized software in progress of $4.5 million has been excluded from the estimated annual amortization expense table below:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:62.777%"><tr><td style="width:1.0%"/><td style="width:84.961%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.839%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">54,411&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">50,713&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">32,562&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">31,978&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">30,622&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">123,805&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">324,091&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfGoodwillTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>42
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994642584">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consist of the following at December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:70.427%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.791%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accrued wages, bonuses and commissions</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">63,814&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49,126&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other accrued liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,270&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">26,108&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">83,084&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">75,234&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>43
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994267992">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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 );">Schedule of income tax (benefit) provision on income from operations</a></td>
<td class="text">Income tax (benefit) provision on income from operations consists of the following:<table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(10,538)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,814&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,110&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,304)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,585&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,367&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(11,842)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,399&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,477&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(7,936)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(6,088)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(5,069)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,778)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,311&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,408&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
<tr class="re">
<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="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Reconciliation of the U.S. statutory income tax rate to our effective income tax expense rate for operations follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Federal income tax expense at statutory rate</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,759&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">33,566&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">32,733&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">State income tax, net of federal income tax benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,677&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,999&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,953&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net operating loss carryback</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3,445)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Excess tax benefits of share-based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(60,190)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(29,819)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(32,487)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adjustments from the 2017 Tax Cuts and Jobs Act </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,750)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Tax credits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3,867)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3,446)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3,715)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-deductible business expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,199&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,011&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,655&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">89&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,778)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,311&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,408&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of deferred tax assets and liabilities</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The tax effects of the major items recorded as deferred tax assets and liabilities as of December 31 are:</span></div><div style="margin-bottom:14pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.983%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.012%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred income tax assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating expenses not currently deductible</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,084&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,214&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock option and other employee benefit plans</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,446&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,308&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Loss and credit carryforwards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27,199&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,841&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,729&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,363&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,490)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,923)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax assets, net of valuation allowance</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">52,239&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">51,440&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred income tax liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(76,766)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(84,019)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,918)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,265)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Prepaid expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(6,869)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(4,922)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">807&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,676)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(92,746)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(99,882)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net deferred income tax liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(40,507)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(48,442)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>44
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994559000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHAREHOLDERS&#8217; EQUITY (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table details activity in our common stock:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.444%"><tr><td style="width:1.0%"/><td style="width:34.235%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.095%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.498%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.100%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock option exercises</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,174&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">124,363&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">999&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">96,908&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,126&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">74,907&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Purchases of common stock</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(59)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,484)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(72)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(14,289)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(781)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(150,050)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Employee stock plan purchases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,912&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,576&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">45&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,051&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Restricted stock units vested, net of withheld shares upon award settlement</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(12,923)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(5,361)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>45
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596998304024">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following weighted average assumptions were used for options granted:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected life (in years)</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5.0</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6.0</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected volatility</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">26.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">26.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Risk-free interest rate</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Expected forfeiture rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock', window );">Summarizes restricted stock unit and performance share activity</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes restricted stock unit and performance stock unit activity during fiscal year 2020 (shares in thousands):</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:56.944%"><tr><td style="width:1.0%"/><td style="width:57.436%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.019%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.412%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.019%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.414%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Number of Shares</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value per Share</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at January 1, 2019</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">334&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">221.25&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">256&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">241.19&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(76)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">221.15&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(14)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">229.75&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at December 31, 2019</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">500&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">231.57&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">204&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">379.94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(110)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">232.59&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">266.94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unvested at December 31, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">587&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">282.45&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Summary of stock option activity</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Options granted, exercised, forfeited and expired are summarized as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:52.307%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.030%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Number of<br/>Shares</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual Life<br/>(Years)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Aggregate<br/>Intrinsic Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2017</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,817&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">107.91&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">432&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">208.21&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,126)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66.53&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(31)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">158.80&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2018</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,092&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">129.51&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">162&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">251.58&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(999)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">96.92&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(29)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">174.54&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2019</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,226&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">145.27&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">128&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">403.99&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,174)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">105.97&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">165.93&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Outstanding at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,177&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">181.63&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">554,709&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Exercisable at December 31, 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,424&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">155.06&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">400,814&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other information pertaining to option activity was as follows during the twelve months ended December&#160;31:</span></div><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average grant-date fair value of stock options granted</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">98.69&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">74.54&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66.52&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total intrinsic value of stock options exercised</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">292,394&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">155,899&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">176,716&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Summary of share-based compensation expense related to share-based awards</a></td>
<td class="text"><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of subscriptions, software services and maintenance  </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,125&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,002&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,588&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49,240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">44,965&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,152&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total share-based compensation expenses</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">67,365&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">59,967&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">52,740&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Excess tax benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(60,190)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(29,819)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(32,487)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net decrease in net income</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,175&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">30,148&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">20,253&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.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=120381028&amp;loc=d3e5047-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923033304">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic earnings and diluted earnings per share data were computed as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:64.129%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.029%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Numerator for basic and diluted earnings per share:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">194,820&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">146,527&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">147,462&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted-average basic common shares outstanding</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,035&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,640&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,445&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Assumed conversion of dilutive securities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Share-based awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,491&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,465&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,678&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-indent:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Denominator for diluted earnings per share</span></div><div style="text-indent:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160; - Adjusted weighted-average shares</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,526&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,105&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,123&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Earnings per common share:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Basic</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.87&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.79&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.84&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.69&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.65&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.68&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=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>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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997809560">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of operating lease expense were as follows (in thousands):</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:83.750%"><tr><td style="width:1.0%"/><td style="width:19.961%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.629%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:42.017%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.629%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.649%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.463%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.652%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Lease Costs</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Financial Statement Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,524&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,379&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,940&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,269&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Variable lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,760&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,224&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,922&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental information related to leases was as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"><tr><td style="width:1.0%"/><td style="width:60.739%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.651%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.787%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.333%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.790%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other Information</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Cash Flows </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands):</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash paid amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating cash outflows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,131&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,267&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,524&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Lease Term and Discount Rate:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average remaining lease term (years)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.28&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></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="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 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="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:75.000%"><tr><td style="width:1.0%"/><td style="width:58.344%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.725%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.974%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.281%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.976%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,734&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,992&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases, short-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,904&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,387&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases, long-term</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16,279&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16,822&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,183&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,209&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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="margin-bottom:9pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental information related to leases was as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:81.527%"><tr><td style="width:1.0%"/><td style="width:60.739%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.651%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.787%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.333%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.790%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other Information</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Cash Flows </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands):</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cash paid amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating cash outflows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,131&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,267&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,524&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%;text-decoration:underline">Lease Term and Discount Rate:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average remaining lease term (years)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3.28&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of operating lease maturity</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of&#160;December&#160;31, 2020, maturities of lease liabilities were as follows (in thousands):</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:66.111%"><tr><td style="width:1.0%"/><td style="width:70.328%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.270%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:26.002%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Year ending December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">7,015&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,853&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,826&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,337&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,198&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,537&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,766&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Less: Interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,583)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Present value of operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,183&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_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):<table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:72.083%"><tr><td style="width:1.0%"/><td style="width:64.410%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.148%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:32.042%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Year ending December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,372&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,402&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,432&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,462&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">858&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,526&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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=121609121&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=121609121&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=121576215&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=121640914&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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994585848">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:52.307%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.030%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,200&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,964&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">73,164&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">326,284&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">24,364&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">164,520&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,889&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">429,224&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,289&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,670&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,131)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,020,959&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,824&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,120)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">67,411&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,055&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,191&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">81,657&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">285,271&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27,383&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(86,104)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">226,550&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11,099&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,823&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,826&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,748&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">847,672&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">94,149&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,665,453&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,607,274&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><div style="margin-bottom:14pt;margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:52.307%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.030%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">90,808&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">279,282&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,070&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">179,865&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">33,196&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">393,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,797&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">16,553&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">203&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,256&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,290&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">206&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,496)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">975,319&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">120,348&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,240)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,245&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">970&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11,457&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76,672&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">255,365&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">26,918&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(73,829)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">208,454&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,283&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,436&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,379&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">38,098&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">833,203&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">91,343&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,267,068&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,191,614&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.861%"><tr><td style="width:1.0%"/><td style="width:52.307%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.026%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.030%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018 </span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal<br/> and Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">81,299&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,142&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">93,441&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">205,193&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,354&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">161,612&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">29,657&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">349,387&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,134&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,387&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">390&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,881&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,764&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">391&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13,155)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">828,642&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,914&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(8,274)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation and amortization expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49,921&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,123&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">10,715&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">61,759&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment operating income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">231,819&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">28,434&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(68,572)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,681&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,918&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,241&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13,973&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">25,132&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment assets</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">554,960&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,810&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,171,193&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,790,963&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock', window );">Reconciliation of operating income from segments to consolidated</a></td>
<td class="text"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:84.444%"><tr><td style="width:1.0%"/><td style="width:61.235%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.622%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.577%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.622%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.577%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.622%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.745%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Reconciliation of reportable segment operating</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Years Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">income to the Company's consolidated totals:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2018</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total segment operating income</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">226,550&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">208,454&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,681&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of acquired software</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(31,962)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(30,642)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(22,972)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Amortization of customer and trade name intangibles</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(21,662)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(21,445)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(16,217)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other income, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,116&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,471&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">3,378&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">175,042&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">159,838&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">155,870&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120311839&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=120311839&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=120311839&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=120311839&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=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&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>49
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994336088">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:49.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.170%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.309%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.855%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">62,029&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11,135&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">73,164&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">350,648&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">186,409&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">467,513&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,127&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17,802&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">79,831&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,036,832&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:49.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.170%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.309%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.855%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">84,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">296,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">213,061&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,479&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">107,912&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">978,515&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.083%"><tr><td style="width:1.0%"/><td style="width:50.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.638%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.638%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.634%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred at a point in time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software licenses and royalties</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">75,188&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,253&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">93,441&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Subscriptions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">220,547&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Software services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">191,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Maintenance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">384,521&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">21,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hardware and other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">23,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">98,846&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">836,436&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="margin-bottom:5pt;margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.958%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">755,508&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">62,652&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">818,160&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">246,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">52,102&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">11&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">298,503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">19,061&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">70&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,131)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,020,959&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,824&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(19,120)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,116,663&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.958%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2019</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">672,804&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,866&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">726,670&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">287,225&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66,276&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,256&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">359,757&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15,290&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">206&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(15,496)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">975,319&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">120,348&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9,240)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086,427&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.722%"><tr><td style="width:1.0%"/><td style="width:55.863%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.370%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.574%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.395%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.514%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">For the year ended December 31, 2018</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise<br/>Software</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recurring revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">554,581&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">50,488&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">605,069&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-recurring revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">261,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">64,035&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,881&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">330,213&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Intercompany</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,764&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">391&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13,155)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">828,642&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">114,914&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(8,274)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">935,282&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121604090&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>50
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596995091160">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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 );">Schedule of changes in deferred revenue</a></td>
<td class="text"><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="margin-bottom:5pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.138%"><tr><td style="width:1.0%"/><td style="width:50.979%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.871%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2019</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Enterprise Software</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">422,742&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">375,838&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Appraisal&#160;and&#160;Tax</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,945&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,487&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Corporate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,691&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,369&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Totals</span></td><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">461,378&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">412,694&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="margin-bottom:14pt;margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:70.000%"><tr><td style="width:1.0%"/><td style="width:74.892%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.792%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.916%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at beginning of year</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">412,694&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferral of revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,094,185&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Recognition of deferred revenue</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,045,501)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at end of year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">461,378&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract 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/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=121604090&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>51
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994629800">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="margin-bottom:6pt;margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table contains selected financial information from unaudited statements of income for each quarter of 2020 and 2019:</span></div><div style="margin-bottom:11pt;margin-top:17pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:94.444%"><tr><td style="width:1.0%"/><td style="width:26.694%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.282%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.287%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Quarters Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2019</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Dec. 31</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Sept. 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mar. 31</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Dec. 31</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Sept. 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mar. 31</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">283,285&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">285,746&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">271,091&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">276,541&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">288,837&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">275,400&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">275,124&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">247,066&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">138,669&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">143,509&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">131,203&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">129,131&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">142,275&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">130,717&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">127,860&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">116,048&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income before income taxes </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">48,412&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">49,936&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,811&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">34,883&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">47,790&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,552&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">36,419&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,077&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">54,094&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,284&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">53,892&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">47,550&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">46,790&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">31,999&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27,348&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Earnings per diluted share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.29&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.30&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.16&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.15&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1.00&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.80&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">0.69&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Shares used in computing diluted<br/>&#160;&#160; earnings per share</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,925&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,606&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,416&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,144&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,736&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">40,280&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,813&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">39,585&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121640914&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>52
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596921256968">
<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="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($) </div>
<div>subsidiary </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</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_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_RecurringRevenuePercentageOfTotalRevenue', window );">Recurring revenue percentage of total revenue (percent)</a></td>
<td class="nump">73.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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsAndShortTermInvestments', window );">Cash and investments</a></td>
<td class="nump">$ 758,500,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_LongTermLineOfCredit', window );">Revolving line of credit</a></td>
<td class="nump">$ 0<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="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="nump">11<span></span>
</td>
<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="nump">$ 403,700,000<span></span>
</td>
<td class="nump">396,500,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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts receivable, allowance for losses</a></td>
<td class="nump">$ 9,255,000<span></span>
</td>
<td class="nump">5,738,000<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_SalesCommissionRenewalPeriod', window );">Sales commission, renewal period</a></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 " 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">$ 88,363,000<span></span>
</td>
<td class="nump">81,342,000<span></span>
</td>
<td class="nump">$ 63,264,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_GoodwillImpairmentLoss', window );">Goodwill impairment loss</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>
</tr>
<tr class="re">
<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="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="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="nump">$ 5,800,000<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>
</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">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="nump">$ 1,200,000<span></span>
</td>
<td class="nump">300,000<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="nump">154,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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestReceivable', window );">Interest receivable</a></td>
<td class="nump">896,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_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount', window );">Cost-method investment impairment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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="nump">603,623,000<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>
</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_ReportingUnitAxis=tyl_DataAndInsightMember', window );">Data And Insight</a></td>
<td class="text">&#160;<span></span>
</td>
<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</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_GoodwillAssessedForImpairment', window );">Goodwill assessed for impairment</a></td>
<td class="nump">75,700,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="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_ReportingUnitAxis=tyl_CaseManagementBusinessProcessManagementDataAndInsightMember', window );">Case Management, Business Process Management, Data And Insight</a></td>
<td class="text">&#160;<span></span>
</td>
<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</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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_GoodwillAssessedForImpairment', window );">Goodwill assessed for impairment</a></td>
<td class="nump">$ 152,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_PercentageOfTotalGoodwill', window );">Percentage of total goodwill</a></td>
<td class="nump">18.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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tyl_BFTRLLCMember', window );">BFTR, 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>
</tr>
<tr 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</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_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue', window );">Cost method investment</a></td>
<td class="nump">$ 10,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="nump">18.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_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>
</tr>
<tr 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</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_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue', window );">Cost method investment</a></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="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>
</tr>
<tr 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</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 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 (in years)</a></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 (in years)</a></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="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">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 (in years)</a></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 (in years)</a></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>
</tr>
<tr 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</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 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 (in years)</a></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 (in years)</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling', window );">Progress billing retention percentage</a></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">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 (in years)</a></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 (in years)</a></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>
</tr>
<tr 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</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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Contractual term (in years)</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr 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</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></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>
</tr>
<tr 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</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></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>
</tr>
<tr 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</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></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>
</tr>
<tr 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</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></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_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance 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>
</tr>
<tr 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</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_ShareBasedCompensationShareConversionRateShares', window );">Share conversion rate (shares) | shares</a></td>
<td class="nump">1<span></span>
</td>
<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>
</tr>
<tr 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</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_AccountsReceivableNet', window );">Accounts receivable, net</a></td>
<td class="nump">$ 140,800,000<span></span>
</td>
<td class="nump">134,000,000.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_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>
</tr>
<tr 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</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_AccountsReceivableNet', window );">Accounts receivable, net</a></td>
<td class="nump">$ 13,100,000<span></span>
</td>
<td class="nump">$ 13,100,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>
</tr>
<tr 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</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 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 (in years)</a></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 (in years)</a></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>
</tr>
<tr 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</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 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 (in years)</a></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 (in years)</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr 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</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 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 (in years)</a></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>
</tr>
<tr 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</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term (in years)</a></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_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_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies</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_LongTermLineOfCredit', window );">Revolving line of credit</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>
</tr>
<tr class="ro">
<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="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>
</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_GoodwillAssessedForImpairment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Goodwill Assessed For Impairment</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_GoodwillAssessedForImpairment</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_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_PercentageOfTotalGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Total Goodwill</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_PercentageOfTotalGoodwill</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_RecurringRevenuePercentageOfTotalRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Recurring Revenue Percentage of Total Revenue</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_RecurringRevenuePercentageOfTotalRevenue</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_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_tyl_ShareBasedCompensationShareConversionRateShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Share Conversion Rate, 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;">tyl_ShareBasedCompensationShareConversionRateShares</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>instant</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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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=120400017&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_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121611835&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=121599878&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_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_CashCashEquivalentsAndShortTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cash includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and effectively may withdraw funds at any time without prior notice or penalty. Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid Investments that are both readily convertible to known amounts of cash, and so near their maturity that they present minimal risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months. Short-term investments, exclusive of cash equivalents, generally consist of marketable securities intended to be sold within one year (or the normal operating cycle if longer) and may include trading securities, available-for-sale securities, or held-to-maturity securities (if maturing within one year), 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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsAndShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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=121586364&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=121586364&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=121583591&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=120269885&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=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121586364&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=121586364&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 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_InterestReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 interest earned but not received. Also called accrued interest or accrued interest 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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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_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=121586364&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=121553693&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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ReportingUnitAxis=tyl_DataAndInsightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ReportingUnitAxis=tyl_DataAndInsightMember</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_ReportingUnitAxis=tyl_CaseManagementBusinessProcessManagementDataAndInsightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ReportingUnitAxis=tyl_CaseManagementBusinessProcessManagementDataAndInsightMember</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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tyl_BFTRLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tyl_BFTRLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=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_AwardTypeAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PerformanceSharesMember</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>
<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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001676104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for credit loss rollforward (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, 2020</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_AllowanceForDoubtfulAccountsReceivableRollforward', window );"><strong>Accounts Receivable, Allowance for Credit Loss</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " 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">$ 5,738<span></span>
</td>
<td class="nump">$ 4,647<span></span>
</td>
<td class="nump">$ 5,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_ProvisionForDoubtfulAccounts', window );">Provisions for losses and sales adjustments - accounts receivable</a></td>
<td class="nump">3,517<span></span>
</td>
<td class="nump">1,636<span></span>
</td>
<td class="num">(569)<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Collections of accounts previously written off</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(545)<span></span>
</td>
<td class="num">(211)<span></span>
</td>
</tr>
<tr class="re">
<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="nump">$ 9,255<span></span>
</td>
<td class="nump">$ 5,738<span></span>
</td>
<td class="nump">$ 4,647<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=121599337&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=121611835&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=121599337&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=121599878&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_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=121599337&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=121599337&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=120395209&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>54
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596998390776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACQUISITIONS - Narrative (Detail) - USD ($)<br></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="3">12 Months Ended</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. 31, 2020</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition</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_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Payment for 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="nump">$ 5,619,000<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_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="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_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>
</tr>
<tr class="re">
<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</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_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</a></td>
<td class="nump">$ 20,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles', window );">Adjustments related to intangibles</a></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,000<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_GoodwillPurchaseAccountingAdjustments', window );">Adjustments related to 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="num">(1,689,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_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>
</tr>
<tr class="ro">
<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</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_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 198,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Total purchase price to acquire business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">201,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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">$ 2,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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Payment for 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="nump">$ 5,600,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>
</tr>
<tr class="ro">
<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</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_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,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="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>
</tr>
<tr class="re">
<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</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_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="nump">$ 1,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120321790&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=120321790&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_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 intangibles acquired 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=121647850&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_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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=121647850&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_GoodwillPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from adjustments after acquisition date under purchase accounting 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 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=116868678&amp;loc=d3e961-128460<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> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentForContingentConsiderationLiabilityFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&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_PaymentForContingentConsiderationLiabilityFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=120321790&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=121586364&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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997599000">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment</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">$ 305,914<span></span>
</td>
<td class="nump">$ 284,444<span></span>
</td>
</tr>
<tr class="re">
<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">(137,910)<span></span>
</td>
<td class="num">(112,583)<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">168,004<span></span>
</td>
<td class="nump">171,861<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</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">18,653<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</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">$ 147,729<span></span>
</td>
<td class="nump">137,448<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</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 );">Useful Lives (years)</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</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 );">Useful Lives (years)</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</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">$ 108,571<span></span>
</td>
<td class="nump">99,435<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</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 );">Useful Lives (years)</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</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 );">Useful Lives (years)</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</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">$ 30,666<span></span>
</td>
<td class="nump">28,506<span></span>
</td>
</tr>
<tr class="re">
<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 );">Useful Lives (years)</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</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">$ 295<span></span>
</td>
<td class="nump">$ 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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives (years)</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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>56
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994447944">
<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, 2020</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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [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_Depreciation', window );">Depreciation expense</a></td>
<td class="nump">$ 25.5<span></span>
</td>
<td class="nump">$ 23.4<span></span>
</td>
<td class="nump">$ 21.2<span></span>
</td>
</tr>
<tr class="re">
<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">$ 9.9<span></span>
</td>
<td class="nump">$ 20.8<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_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=121586364&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=121586364&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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997754056">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill</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">$ 840,117<span></span>
</td>
<td class="nump">$ 753,718<span></span>
</td>
</tr>
<tr class="re">
<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">838,428<span></span>
</td>
<td class="nump">840,117<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</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">76,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_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</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">10,080<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>
</tr>
<tr class="re">
<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</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_GoodwillPurchaseAccountingAdjustments', window );">Purchase price adjustments related to CHT acquisition</a></td>
<td class="num">(1,689)<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</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">825,949<span></span>
</td>
<td class="nump">739,550<span></span>
</td>
</tr>
<tr class="ro">
<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">824,260<span></span>
</td>
<td class="nump">825,949<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</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">76,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_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</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">10,080<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 | Courthouse Technologies, Ltd</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</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_GoodwillPurchaseAccountingAdjustments', window );">Purchase price adjustments related to CHT acquisition</a></td>
<td class="num">(1,689)<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</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">14,168<span></span>
</td>
<td class="nump">14,168<span></span>
</td>
</tr>
<tr class="re">
<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">14,168<span></span>
</td>
<td class="nump">14,168<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</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</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">$ 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 | Courthouse Technologies, Ltd</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</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_GoodwillPurchaseAccountingAdjustments', window );">Purchase price adjustments related to CHT acquisition</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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://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=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_GoodwillPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from adjustments after acquisition date under purchase accounting 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 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=116868678&amp;loc=d3e961-128460<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> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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=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_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_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>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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596921248040">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Gross carrying amount of other intangibles:</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">$ 623,428<span></span>
</td>
<td class="nump">$ 616,051<span></span>
</td>
</tr>
<tr class="re">
<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">(292,239)<span></span>
</td>
<td class="num">(237,137)<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">331,189<span></span>
</td>
<td class="nump">378,914<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Gross carrying amount of other intangibles:</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">322,619<span></span>
</td>
<td class="nump">321,019<span></span>
</td>
</tr>
<tr class="ro">
<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">(116,609)<span></span>
</td>
<td class="num">(97,320)<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Gross carrying amount of other intangibles:</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">262,286<span></span>
</td>
</tr>
<tr class="ro">
<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">(162,378)<span></span>
</td>
<td class="num">(130,416)<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Gross carrying amount of other intangibles:</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">22,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">(9,366)<span></span>
</td>
<td class="num">(7,205)<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Gross carrying amount of other intangibles:</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">10,581<span></span>
</td>
<td class="nump">4,804<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(1,460)<span></span>
</td>
<td class="num">(296)<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Gross carrying amount of other intangibles:</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">5,037<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">$ (2,426)<span></span>
</td>
<td class="num">$ (1,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_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_FiniteLivedIntangibleAssetsNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FiniteLivedIntangibleAssetsNetAbstract</td>
</tr>
<tr>
<td style="padding-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>59
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597012847128">
<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, 2020</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</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">$ 55,100<span></span>
</td>
<td class="nump">$ 52,800<span></span>
</td>
<td class="nump">$ 39,600<span></span>
</td>
</tr>
<tr class="re">
<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, 2021</a></td>
<td class="nump">54,411<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, 2022</a></td>
<td class="nump">50,713<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, 2023</a></td>
<td class="nump">32,562<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, 2024</a></td>
<td class="nump">31,978<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, 2025</a></td>
<td class="nump">30,622<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">123,805<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_CapitalizedComputerSoftwareGross', window );">Capitalized software in progress</a></td>
<td class="nump">4,500<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="re">
<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</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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', 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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', 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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', 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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', 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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">Amortization expense, 2025</a></td>
<td class="nump">397<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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Amortization expense, thereafter</a></td>
<td class="nump">$ 114<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=121586364&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_CapitalizedComputerSoftwareGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software.</p></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 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_CapitalizedComputerSoftwareGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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 for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>60
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997988632">
<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, 2020</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_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite Lived Intangible Assets</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">$ 838,428<span></span>
</td>
<td class="nump">$ 840,117<span></span>
</td>
<td class="nump">$ 753,718<span></span>
</td>
</tr>
<tr class="re">
<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">623,428<span></span>
</td>
<td class="nump">616,051<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">292,239<span></span>
</td>
<td class="nump">237,137<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</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">$ 322,619<span></span>
</td>
<td class="nump">$ 321,019<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">16 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">$ 116,609<span></span>
</td>
<td class="nump">$ 97,320<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</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">$ 262,286<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">$ 162,378<span></span>
</td>
<td class="nump">$ 130,416<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</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">$ 22,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">$ 9,366<span></span>
</td>
<td class="nump">$ 7,205<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</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">$ 10,581<span></span>
</td>
<td class="nump">$ 4,804<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">5 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">$ 1,460<span></span>
</td>
<td class="nump">$ 296<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</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">$ 5,037<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">9 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">$ 2,426<span></span>
</td>
<td class="nump">$ 1,900<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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://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>61
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923132632">
<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, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity</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 );">2021</a></td>
<td class="nump">$ 54,411<span></span>
</td>
</tr>
<tr class="re">
<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 );">2022</a></td>
<td class="nump">50,713<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2023</a></td>
<td class="nump">32,562<span></span>
</td>
</tr>
<tr class="re">
<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 );">2024</a></td>
<td class="nump">31,978<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2025</a></td>
<td class="nump">30,622<span></span>
</td>
</tr>
<tr class="re">
<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">123,805<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_FiniteLivedIntangibleAssetsNet', window );">Finite-lived intangible assets, net</a></td>
<td class="nump">$ 324,091<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 for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract</td>
</tr>
<tr>
<td style="padding-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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596998872952">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>ACCRUED LIABILITIES (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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">$ 63,814<span></span>
</td>
<td class="nump">$ 49,126<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other accrued liabilities</a></td>
<td class="nump">19,270<span></span>
</td>
<td class="nump">26,108<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">$ 83,084<span></span>
</td>
<td class="nump">$ 75,234<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&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=121566466&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=121566466&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>63
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596998818808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>REVOLVING LINE OF CREDIT (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Dec. 31, 2020</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_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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LettersOfCreditOutstandingAmount', window );">Letter of credit outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,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_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">$ 610,000<span></span>
</td>
<td class="nump">$ 1,750,000<span></span>
</td>
<td class="nump">$ 770,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">3.38%<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">1.27%<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 (in percent)</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 (in percent)</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 (in percent)</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 (in percent)</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<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120520924&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=119993939&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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=121583591&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=121586364&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=121586364&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_LettersOfCreditOutstandingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The total amount of the contingent obligation under letters of credit outstanding as of the reporting 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_LettersOfCreditOutstandingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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>64
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994282792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAX - Income Tax (Benefit) Provision 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, 2020</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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="num">$ (10,538)<span></span>
</td>
<td class="nump">$ 12,814<span></span>
</td>
<td class="nump">$ 9,110<span></span>
</td>
</tr>
<tr class="re">
<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="num">(1,304)<span></span>
</td>
<td class="nump">6,585<span></span>
</td>
<td class="nump">4,367<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="num">(11,842)<span></span>
</td>
<td class="nump">19,399<span></span>
</td>
<td class="nump">13,477<span></span>
</td>
</tr>
<tr class="re">
<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">(7,936)<span></span>
</td>
<td class="num">(6,088)<span></span>
</td>
<td class="num">(5,069)<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="num">$ (19,778)<span></span>
</td>
<td class="nump">$ 13,311<span></span>
</td>
<td class="nump">$ 8,408<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=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 4: 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=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120395691&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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=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 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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120385591&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001255592">
<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, 2020</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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">$ 36,759<span></span>
</td>
<td class="nump">$ 33,566<span></span>
</td>
<td class="nump">$ 32,733<span></span>
</td>
</tr>
<tr class="re">
<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,677<span></span>
</td>
<td class="nump">6,999<span></span>
</td>
<td class="nump">7,953<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_NetOperatingLossCarryback', window );">Net operating loss carryback</a></td>
<td class="num">(3,445)<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_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount', window );">Excess tax benefits of share-based compensation</a></td>
<td class="num">(60,190)<span></span>
</td>
<td class="num">(29,819)<span></span>
</td>
<td class="num">(32,487)<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 );">Adjustments from the 2017 Tax Cuts and Jobs Act</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,750)<span></span>
</td>
</tr>
<tr class="re">
<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,867)<span></span>
</td>
<td class="num">(3,446)<span></span>
</td>
<td class="num">(3,715)<span></span>
</td>
</tr>
<tr class="ro">
<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">4,199<span></span>
</td>
<td class="nump">6,011<span></span>
</td>
<td class="nump">5,655<span></span>
</td>
</tr>
<tr class="re">
<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">89<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">19<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="num">$ (19,778)<span></span>
</td>
<td class="nump">$ 13,311<span></span>
</td>
<td class="nump">$ 8,408<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_NetOperatingLossCarryback">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Operating Loss Carryback</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_NetOperatingLossCarryback</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_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=120384911&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 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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120385591&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=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_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://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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=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_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://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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>66
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596998762744">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract', window );"><strong>Deferred income tax assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible', window );">Operating expenses not currently deductible</a></td>
<td class="nump">$ 9,084<span></span>
</td>
<td class="nump">$ 10,214<span></span>
</td>
</tr>
<tr class="re">
<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">17,446<span></span>
</td>
<td class="nump">19,308<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">27,199<span></span>
</td>
<td class="nump">23,841<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,729<span></span>
</td>
<td class="nump">53,363<span></span>
</td>
</tr>
<tr class="ro">
<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,490)<span></span>
</td>
<td class="num">(1,923)<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">52,239<span></span>
</td>
<td class="nump">51,440<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred income tax liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets', window );">Intangible assets</a></td>
<td class="num">(76,766)<span></span>
</td>
<td class="num">(84,019)<span></span>
</td>
</tr>
<tr class="ro">
<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,918)<span></span>
</td>
<td class="num">(9,265)<span></span>
</td>
</tr>
<tr class="re">
<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">(6,869)<span></span>
</td>
<td class="num">(4,922)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsDeferredIncome', window );">Deferred revenue</a></td>
<td class="nump">807<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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="text">&#160;<span></span>
</td>
<td class="num">(1,676)<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">(92,746)<span></span>
</td>
<td class="num">(99,882)<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">$ (40,507)<span></span>
</td>
<td class="num">$ (48,442)<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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><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(15)(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&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 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=120398452&amp;loc=d3e534808-122878<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(26)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DeferredTaxAssetsDeferredIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from deferred 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 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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsDeferredIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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://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 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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=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_DeferredTaxAssetsNetOfValuationAllowanceAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DeferredTaxAssetsNetOfValuationAllowanceAbstract</td>
</tr>
<tr>
<td style="padding-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_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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://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 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=120406818&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=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_DeferredTaxLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DeferredTaxLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597031643816">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAX - 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, 2020</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_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards</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_NetOperatingLossCarryback', window );">Net operating loss carryback</a></td>
<td class="nump">$ 3,445<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_TaxCreditCarryforwardAmount', window );">Tax credit carryforwards</a></td>
<td class="nump">8,600<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_UnrecognizedTaxBenefitsPeriodIncreaseDecrease', window );">Increase of liability for an uncertain tax position</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,900<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes, net of refunds</a></td>
<td class="nump">3,300<span></span>
</td>
<td class="nump">$ 21,300<span></span>
</td>
<td class="nump">$ 6,800<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="re">
<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</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">81,500<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="ro">
<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</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">$ 3,500<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_NetOperatingLossCarryback">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Operating Loss Carryback</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_NetOperatingLossCarryback</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_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=121583591&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://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 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>68
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001718920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHAREHOLDERS&#8217; 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, 2020</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_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 (in shares)</a></td>
<td class="nump">1,174<span></span>
</td>
<td class="nump">999<span></span>
</td>
<td class="nump">1,126<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance/ Exercise of stock options</a></td>
<td class="nump">$ 124,363<span></span>
</td>
<td class="nump">$ 96,908<span></span>
</td>
<td class="nump">$ 74,907<span></span>
</td>
</tr>
<tr class="ro">
<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 (in shares)</a></td>
<td class="num">(59)<span></span>
</td>
<td class="num">(72)<span></span>
</td>
<td class="num">(781)<span></span>
</td>
</tr>
<tr class="re">
<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">$ (15,484)<span></span>
</td>
<td class="num">$ (14,289)<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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Employee stock plan purchases (in shares)</a></td>
<td class="nump">40<span></span>
</td>
<td class="nump">53<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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Employee stock plan purchases</a></td>
<td class="nump">$ 10,912<span></span>
</td>
<td class="nump">$ 9,576<span></span>
</td>
<td class="nump">$ 8,051<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_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement', window );">Restricted stock units vested, net of withheld shares upon award settlement (in shares)</a></td>
<td class="nump">76<span></span>
</td>
<td class="nump">53<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement', window );">Restricted stock units vested, net of withheld shares upon award settlement</a></td>
<td class="num">$ (12,923)<span></span>
</td>
<td class="num">$ (5,361)<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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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=120397183&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=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=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=120397183&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=120381028&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=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>69
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994615528">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SHAREHOLDERS&#8217; EQUITY - Additional Information (Detail)<br> shares in Millions</strong></div></th>
<th class="th">
<div>Feb. 19, 2021 </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 (in shares)</a></td>
<td class="nump">2.5<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>70
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001645304">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award</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 (in shares)</a></td>
<td class="nump">2,500,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 (in shares)</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">$ 231.93<span></span>
</td>
<td class="nump">$ 188.48<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</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 (in shares)</a></td>
<td class="nump">664,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 (in shares)</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</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 (in years)</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">752,000<span></span>
</td>
<td class="nump">1,200,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">$ 164.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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted average amortization period</a></td>
<td class="text">3 years 1 month 13 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance Shares</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</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_ShareBasedCompensationShareConversionRateShares', window );">Share conversion rate (shares)</a></td>
<td class="nump">1<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="re">
<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</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 (in years)</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="ro">
<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</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 (in years)</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="re">
<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</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 (in years)</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="ro">
<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</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 (in years)</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="re">
<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</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 (in years)</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="ro">
<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</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 (in years)</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_tyl_ShareBasedCompensationShareConversionRateShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Share Conversion Rate, 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;">tyl_ShareBasedCompensationShareConversionRateShares</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>instant</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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PerformanceSharesMember</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>XML
<SEQUENCE>71
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596998386264">
<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, 2020</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award</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</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">5 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">27.00%<span></span>
</td>
<td class="nump">26.60%<span></span>
</td>
<td class="nump">26.70%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free interest rate (in percentage)</a></td>
<td class="nump">0.40%<span></span>
</td>
<td class="nump">1.80%<span></span>
</td>
<td class="nump">2.70%<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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=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>72
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597000992184">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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 (in 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">204<span></span>
</td>
<td class="nump">256<span></span>
</td>
</tr>
<tr class="ro">
<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 (in shares)</a></td>
<td class="num">(110)<span></span>
</td>
<td class="num">(76)<span></span>
</td>
</tr>
<tr class="re">
<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 (in shares)</a></td>
<td class="num">(7)<span></span>
</td>
<td class="num">(14)<span></span>
</td>
</tr>
<tr class="ro">
<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 (in shares)</a></td>
<td class="nump">587<span></span>
</td>
<td class="nump">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_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">$ 231.57<span></span>
</td>
<td class="nump">$ 221.25<span></span>
</td>
</tr>
<tr class="re">
<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">379.94<span></span>
</td>
<td class="nump">241.19<span></span>
</td>
</tr>
<tr class="ro">
<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">232.59<span></span>
</td>
<td class="nump">221.15<span></span>
</td>
</tr>
<tr class="re">
<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">266.94<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">$ 282.45<span></span>
</td>
<td class="nump">$ 231.57<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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>73
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997120936">
<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, 2020</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_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">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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">128<span></span>
</td>
<td class="nump">162<span></span>
</td>
<td class="nump">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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised (in shares)</a></td>
<td class="num">(1,174)<span></span>
</td>
<td class="num">(999)<span></span>
</td>
<td class="num">(1,126)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Forfeited (in shares)</a></td>
<td class="num">(3)<span></span>
</td>
<td class="num">(29)<span></span>
</td>
<td class="num">(31)<span></span>
</td>
</tr>
<tr class="ro">
<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">2,177<span></span>
</td>
<td class="nump">3,226<span></span>
</td>
<td class="nump">4,092<span></span>
</td>
</tr>
<tr class="re">
<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">1,424<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">$ 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted (in dollars per share)</a></td>
<td class="nump">403.99<span></span>
</td>
<td class="nump">251.58<span></span>
</td>
<td class="nump">208.21<span></span>
</td>
</tr>
<tr class="re">
<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">105.97<span></span>
</td>
<td class="nump">96.92<span></span>
</td>
<td class="nump">66.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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Forfeited (in dollars per share)</a></td>
<td class="nump">165.93<span></span>
</td>
<td class="nump">174.54<span></span>
</td>
<td class="nump">158.80<span></span>
</td>
</tr>
<tr class="re">
<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">181.63<span></span>
</td>
<td class="nump">$ 145.27<span></span>
</td>
<td class="nump">$ 129.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable (in dollars per share)</a></td>
<td class="nump">$ 155.06<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">$ 554,709<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">$ 400,814<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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=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>74
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994731224">
<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, 2020</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_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">$ 98.69<span></span>
</td>
<td class="nump">$ 74.54<span></span>
</td>
<td class="nump">$ 66.52<span></span>
</td>
</tr>
<tr class="re">
<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">$ 292,394<span></span>
</td>
<td class="nump">$ 155,899<span></span>
</td>
<td class="nump">$ 176,716<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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>75
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001338280">
<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, 2020</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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs</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">$ 67,365<span></span>
</td>
<td class="nump">$ 59,967<span></span>
</td>
<td class="nump">$ 52,740<span></span>
</td>
</tr>
<tr class="re">
<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">(60,190)<span></span>
</td>
<td class="num">(29,819)<span></span>
</td>
<td class="num">(32,487)<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 in net income</a></td>
<td class="nump">7,175<span></span>
</td>
<td class="nump">30,148<span></span>
</td>
<td class="nump">20,253<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_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember', window );">Cost of subscriptions, software services and 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="ro">
<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</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">18,125<span></span>
</td>
<td class="nump">15,002<span></span>
</td>
<td class="nump">13,588<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</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">$ 49,240<span></span>
</td>
<td class="nump">$ 44,965<span></span>
</td>
<td class="nump">$ 39,152<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember</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>76
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596995284504">
<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, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2020</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_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">$ 54,094<span></span>
</td>
<td class="nump">$ 39,284<span></span>
</td>
<td class="nump">$ 53,892<span></span>
</td>
<td class="nump">$ 47,550<span></span>
</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">$ 194,820<span></span>
</td>
<td class="nump">$ 146,527<span></span>
</td>
<td class="nump">$ 147,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_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">40,035<span></span>
</td>
<td class="nump">38,640<span></span>
</td>
<td class="nump">38,445<span></span>
</td>
</tr>
<tr 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 );">Share-based awards (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,491<span></span>
</td>
<td class="nump">1,465<span></span>
</td>
<td class="nump">1,678<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 &#160;&#160; - Adjusted weighted-average shares</a></td>
<td class="nump">41,925<span></span>
</td>
<td class="nump">41,606<span></span>
</td>
<td class="nump">41,416<span></span>
</td>
<td class="nump">41,144<span></span>
</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">41,526<span></span>
</td>
<td class="nump">40,105<span></span>
</td>
<td class="nump">40,123<span></span>
</td>
</tr>
<tr class="ro">
<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">$ 4.87<span></span>
</td>
<td class="nump">$ 3.79<span></span>
</td>
<td class="nump">$ 3.84<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (USD per share)</a></td>
<td class="nump">$ 1.29<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 1.30<span></span>
</td>
<td class="nump">$ 1.16<span></span>
</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">$ 4.69<span></span>
</td>
<td class="nump">$ 3.65<span></span>
</td>
<td class="nump">$ 3.68<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 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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1448-109256<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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<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=121326447&amp;loc=d3e1337-109256<br><br>Reference 7: 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=120380238&amp;loc=d3e4984-109258<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120380238&amp;loc=d3e3842-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22644-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1252-109256<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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=120380238&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120380238&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&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 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 10: 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 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1337-109256<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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://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 22<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1707-109256<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28A<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1500-109256<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1757-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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://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 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994338568">
<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, 2020</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_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">132<span></span>
</td>
<td class="nump">633<span></span>
</td>
<td class="nump">888<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=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>78
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001403880">
<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, 2020</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_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease</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">$ 10,224<span></span>
</td>
<td class="nump">$ 9,922<span></span>
</td>
<td class="nump">$ 7,400<span></span>
</td>
</tr>
<tr class="ro">
<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 (in years)</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,100<span></span>
</td>
<td class="nump">$ 1,200<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_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease</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 (in years)</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_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease</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 (in years)</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_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=121609121&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=121568110&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_LesseeLeaseDescriptionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_LesseeLeaseDescriptionLineItems</td>
</tr>
<tr>
<td style="padding-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_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=121609121&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=121609121&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=121576215&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_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=120395209&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>79
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997688856">
<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, 2020</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_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,524<span></span>
</td>
<td class="nump">$ 6,379<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">1,940<span></span>
</td>
<td class="nump">2,269<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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,760<span></span>
</td>
<td class="nump">1,274<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">$ 10,224<span></span>
</td>
<td class="nump">$ 9,922<span></span>
</td>
<td class="nump">$ 7,400<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=121609121&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=121568110&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=121568110&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=121609121&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=121609121&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=121568110&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=121609121&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=121568110&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>80
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923197640">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>LEASES - Schedule of leases assets and liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsAbstract', window );"><strong>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_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">$ 18,734<span></span>
</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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">5,904<span></span>
</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,279<span></span>
</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">$ 22,183<span></span>
</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=121603541&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=121603541&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=121603541&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=121603541&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>81
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997775928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LEASES - Schedule of other information related to leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [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_OperatingLeasePayments', window );">Operating cash outflows from operating leases</a></td>
<td class="nump">$ 8,131<span></span>
</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">$ 5,524<span></span>
</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">3 years<span></span>
</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">3.28%<span></span>
</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=121603541&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=121609121&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=121609121&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=121568110&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=121568110&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=121609121&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=121568110&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=121609121&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>82
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001026520">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>LEASES - Maturity of lease liabilities (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Year ending December 31,</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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2021</a></td>
<td class="nump">$ 7,015,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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2022</a></td>
<td class="nump">4,853,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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2023</a></td>
<td class="nump">3,826,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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2024</a></td>
<td class="nump">3,337,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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2025</a></td>
<td class="nump">2,198,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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">2,537,000<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_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total lease payments</a></td>
<td class="nump">23,766,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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: Interest</a></td>
<td class="num">(1,583,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_OperatingLeaseLiability', window );">Present value of operating lease liabilities</a></td>
<td class="nump">$ 22,183,000<span></span>
</td>
<td class="nump">$ 23,209,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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&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_OperatingLeaseLiabilitiesPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OperatingLeaseLiabilitiesPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-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=121603541&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>83
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997592376">
<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, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract', window );"><strong>Year ending December 31,</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_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths', window );">2021</a></td>
<td class="nump">$ 1,372<span></span>
</td>
</tr>
<tr class="re">
<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 );">2022</a></td>
<td class="nump">1,402<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2023</a></td>
<td class="nump">1,432<span></span>
</td>
</tr>
<tr class="re">
<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 );">2024</a></td>
<td class="nump">1,462<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2025</a></td>
<td class="nump">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_LessorOperatingLeasePaymentsToBeReceivedThereafter', window );">Thereafter</a></td>
<td class="nump">0<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">$ 6,526<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_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract</td>
</tr>
<tr>
<td style="padding-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=121576215&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 payment to be received by lessor for operating lease in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&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 payment to be received by lessor for operating lease in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&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_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 payment to be received by lessor for operating lease in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&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_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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 payment to be received by lessor for operating lease after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&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 payment to be received by lessor for operating lease in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&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 payment to be received by lessor for operating lease in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&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>84
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001802520">
<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, 2020</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_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure</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">$ 12.7<span></span>
</td>
<td class="nump">$ 11.5<span></span>
</td>
<td class="nump">$ 9.3<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</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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 70<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=49170846&amp;loc=d3e28014-114942<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>85
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994481368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>COMMITMENTS AND CONTINGENCIES - Additional Information (Detail)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($) </div>
<div>legalMatters</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_UnusualOrInfrequentItemOrBothExpenses', window );">Unusual expenses</a></td>
<td class="nump">$ 4.2<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedInsuranceCurrentAndNoncurrent', window );">Accrued insurance</a></td>
<td class="nump">1.1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InsuranceRecoveries', window );">Insurance recoveries</a></td>
<td class="nump">$ 2.4<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_NumberOfLegalProceedingsThatHaveMaterialEffect', window );">Number of material legal proceedings pending | legalMatters</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_tyl_UnusualOrInfrequentItemOrBothExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Unusual or Infrequent Item, or Both, 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;">tyl_UnusualOrInfrequentItemOrBothExpenses</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_AccruedInsuranceCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 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(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedInsuranceCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_InsuranceRecoveries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 recovered from insurance. These recoveries reduce costs and losses that are reported as a separate line item under operating 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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&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_InsuranceRecoveries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>86
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596994811704">
<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, 2020 </div>
<div>USD ($) </div>
<div>segment </div>
<div>business_unit</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information</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 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_NumberOfReportableSegments', window );">Number of reportable segment (segment) | segment</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">$ 9.9<span></span>
</td>
<td class="nump">$ 20.8<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information</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_PaymentsForCapitalImprovements', window );">Payment for construction to expand building</a></td>
<td class="nump">6.6<span></span>
</td>
<td class="nump">12.6<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</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">$ 3.3<span></span>
</td>
<td class="nump">$ 8.2<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>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8672-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_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=121586364&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>87
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596916139400">
<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, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2020</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information</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">$ 283,285<span></span>
</td>
<td class="nump">$ 285,746<span></span>
</td>
<td class="nump">$ 271,091<span></span>
</td>
<td class="nump">$ 276,541<span></span>
</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">$ 1,116,663<span></span>
</td>
<td class="nump">$ 1,086,427<span></span>
</td>
<td class="nump">$ 935,282<span></span>
</td>
</tr>
<tr class="re">
<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">81,657<span></span>
</td>
<td class="nump">76,672<span></span>
</td>
<td class="nump">61,759<span></span>
</td>
</tr>
<tr class="ro">
<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">172,926<span></span>
</td>
<td class="nump">156,367<span></span>
</td>
<td class="nump">152,492<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">21,748<span></span>
</td>
<td class="nump">38,098<span></span>
</td>
<td class="nump">25,132<span></span>
</td>
</tr>
<tr class="ro">
<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,607,274<span></span>
</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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,607,274<span></span>
</td>
<td class="nump">2,191,614<span></span>
</td>
<td class="nump">1,790,963<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</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">(19,131)<span></span>
</td>
<td class="num">(15,496)<span></span>
</td>
<td class="num">(13,155)<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</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">19,061<span></span>
</td>
<td class="nump">15,290<span></span>
</td>
<td class="nump">12,764<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</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">70<span></span>
</td>
<td class="nump">206<span></span>
</td>
<td class="nump">391<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</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,020,959<span></span>
</td>
<td class="nump">975,319<span></span>
</td>
<td class="nump">828,642<span></span>
</td>
</tr>
<tr class="re">
<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">67,411<span></span>
</td>
<td class="nump">64,245<span></span>
</td>
<td class="nump">49,921<span></span>
</td>
</tr>
<tr class="ro">
<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">285,271<span></span>
</td>
<td class="nump">255,365<span></span>
</td>
<td class="nump">231,819<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">11,099<span></span>
</td>
<td class="nump">19,283<span></span>
</td>
<td class="nump">9,918<span></span>
</td>
</tr>
<tr class="ro">
<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">847,672<span></span>
</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">833,203<span></span>
</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">847,672<span></span>
</td>
<td class="nump">833,203<span></span>
</td>
<td class="nump">554,960<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</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">114,824<span></span>
</td>
<td class="nump">120,348<span></span>
</td>
<td class="nump">114,914<span></span>
</td>
</tr>
<tr class="ro">
<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">1,055<span></span>
</td>
<td class="nump">970<span></span>
</td>
<td class="nump">1,123<span></span>
</td>
</tr>
<tr class="re">
<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">27,383<span></span>
</td>
<td class="nump">26,918<span></span>
</td>
<td class="nump">28,434<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">3,823<span></span>
</td>
<td class="nump">8,436<span></span>
</td>
<td class="nump">1,241<span></span>
</td>
</tr>
<tr class="re">
<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">94,149<span></span>
</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">91,343<span></span>
</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,149<span></span>
</td>
<td class="nump">91,343<span></span>
</td>
<td class="nump">64,810<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="re">
<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</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">(19,120)<span></span>
</td>
<td class="num">(9,240)<span></span>
</td>
<td class="num">(8,274)<span></span>
</td>
</tr>
<tr class="re">
<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">13,191<span></span>
</td>
<td class="nump">11,457<span></span>
</td>
<td class="nump">10,715<span></span>
</td>
</tr>
<tr class="ro">
<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">(86,104)<span></span>
</td>
<td class="num">(73,829)<span></span>
</td>
<td class="num">(68,572)<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">6,826<span></span>
</td>
<td class="nump">10,379<span></span>
</td>
<td class="nump">13,973<span></span>
</td>
</tr>
<tr class="ro">
<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,665,453<span></span>
</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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,665,453<span></span>
</td>
<td class="nump">1,267,068<span></span>
</td>
<td class="nump">1,171,193<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 segment 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</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">226,550<span></span>
</td>
<td class="nump">208,454<span></span>
</td>
<td class="nump">191,681<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</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">73,164<span></span>
</td>
<td class="nump">100,205<span></span>
</td>
<td class="nump">93,441<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | 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</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">64,200<span></span>
</td>
<td class="nump">90,808<span></span>
</td>
<td class="nump">81,299<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">8,964<span></span>
</td>
<td class="nump">9,397<span></span>
</td>
<td class="nump">12,142<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</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</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">350,648<span></span>
</td>
<td class="nump">296,352<span></span>
</td>
<td class="nump">220,547<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">326,284<span></span>
</td>
<td class="nump">279,282<span></span>
</td>
<td class="nump">205,193<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">24,364<span></span>
</td>
<td class="nump">17,070<span></span>
</td>
<td class="nump">15,354<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_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</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</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">186,409<span></span>
</td>
<td class="nump">213,061<span></span>
</td>
<td class="nump">191,269<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">164,520<span></span>
</td>
<td class="nump">179,865<span></span>
</td>
<td class="nump">161,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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | 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</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,889<span></span>
</td>
<td class="nump">33,196<span></span>
</td>
<td class="nump">29,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_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</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</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">467,513<span></span>
</td>
<td class="nump">430,318<span></span>
</td>
<td class="nump">384,521<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">429,224<span></span>
</td>
<td class="nump">393,521<span></span>
</td>
<td class="nump">349,387<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">38,289<span></span>
</td>
<td class="nump">36,797<span></span>
</td>
<td class="nump">35,134<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</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</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,127<span></span>
</td>
<td class="nump">23,479<span></span>
</td>
<td class="nump">21,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_srt_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | 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</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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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,127<span></span>
</td>
<td class="nump">23,479<span></span>
</td>
<td class="nump">21,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_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</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</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">17,802<span></span>
</td>
<td class="nump">23,012<span></span>
</td>
<td class="nump">23,658<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 | 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</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">17,670<span></span>
</td>
<td class="nump">16,553<span></span>
</td>
<td class="nump">18,387<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 | 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</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">121<span></span>
</td>
<td class="nump">203<span></span>
</td>
<td class="nump">390<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</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">$ 11<span></span>
</td>
<td class="nump">$ 6,256<span></span>
</td>
<td class="nump">$ 4,881<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=120398452&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120311839&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=121586364&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>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=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>88
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596998014568">
<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="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2020</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_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems', window );"><strong>Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated</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_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">$ 172,926<span></span>
</td>
<td class="nump">$ 156,367<span></span>
</td>
<td class="nump">$ 152,492<span></span>
</td>
</tr>
<tr class="re">
<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(574,151)<span></span>
</td>
<td class="num">(569,527)<span></span>
</td>
<td class="num">(495,704)<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(21,662)<span></span>
</td>
<td class="num">(21,445)<span></span>
</td>
<td class="num">(16,217)<span></span>
</td>
</tr>
<tr class="re">
<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,116<span></span>
</td>
<td class="nump">3,471<span></span>
</td>
<td class="nump">3,378<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">$ 48,412<span></span>
</td>
<td class="nump">$ 49,936<span></span>
</td>
<td class="nump">$ 41,811<span></span>
</td>
<td class="nump">$ 34,883<span></span>
</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">175,042<span></span>
</td>
<td class="nump">159,838<span></span>
</td>
<td class="nump">155,870<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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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_CostOfGoodsAndServicesSold', window );">Total cost of 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">(31,962)<span></span>
</td>
<td class="num">(30,642)<span></span>
</td>
<td class="num">(22,972)<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 segment 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="re">
<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</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_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">$ 226,550<span></span>
</td>
<td class="nump">$ 208,454<span></span>
</td>
<td class="nump">$ 191,681<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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120395209&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_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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596913764872">
<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, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2020</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">$ 283,285<span></span>
</td>
<td class="nump">$ 285,746<span></span>
</td>
<td class="nump">$ 271,091<span></span>
</td>
<td class="nump">$ 276,541<span></span>
</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">$ 1,116,663<span></span>
</td>
<td class="nump">$ 1,086,427<span></span>
</td>
<td class="nump">$ 935,282<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</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">(19,131)<span></span>
</td>
<td class="num">(15,496)<span></span>
</td>
<td class="num">(13,155)<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="re">
<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</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">(19,120)<span></span>
</td>
<td class="num">(9,240)<span></span>
</td>
<td class="num">(8,274)<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="ro">
<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</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">(19,120)<span></span>
</td>
<td class="num">(9,240)<span></span>
</td>
<td class="num">(8,274)<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="re">
<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</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">19,061<span></span>
</td>
<td class="nump">15,290<span></span>
</td>
<td class="nump">12,764<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="ro">
<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</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">1,020,959<span></span>
</td>
<td class="nump">975,319<span></span>
</td>
<td class="nump">828,642<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="re">
<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</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">70<span></span>
</td>
<td class="nump">206<span></span>
</td>
<td class="nump">391<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="ro">
<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</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">114,824<span></span>
</td>
<td class="nump">120,348<span></span>
</td>
<td class="nump">114,914<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_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="re">
<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</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">818,160<span></span>
</td>
<td class="nump">726,670<span></span>
</td>
<td class="nump">605,069<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="ro">
<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</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_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="re">
<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</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">755,508<span></span>
</td>
<td class="nump">672,804<span></span>
</td>
<td class="nump">554,581<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="ro">
<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</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">62,652<span></span>
</td>
<td class="nump">53,866<span></span>
</td>
<td class="nump">50,488<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="re">
<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</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">298,503<span></span>
</td>
<td class="nump">359,757<span></span>
</td>
<td class="nump">330,213<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="ro">
<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</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">11<span></span>
</td>
<td class="nump">6,256<span></span>
</td>
<td class="nump">4,881<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="re">
<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</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">246,390<span></span>
</td>
<td class="nump">287,225<span></span>
</td>
<td class="nump">261,297<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="ro">
<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</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">52,102<span></span>
</td>
<td class="nump">66,276<span></span>
</td>
<td class="nump">64,035<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="re">
<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</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">79,831<span></span>
</td>
<td class="nump">107,912<span></span>
</td>
<td class="nump">98,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="ro">
<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</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">1,036,832<span></span>
</td>
<td class="nump">978,515<span></span>
</td>
<td class="nump">836,436<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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">73,164<span></span>
</td>
<td class="nump">100,205<span></span>
</td>
<td class="nump">93,441<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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_LicenseMember', window );">Software licenses and royalties | 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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">64,200<span></span>
</td>
<td class="nump">90,808<span></span>
</td>
<td class="nump">81,299<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">8,964<span></span>
</td>
<td class="nump">9,397<span></span>
</td>
<td class="nump">12,142<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="re">
<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</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">62,029<span></span>
</td>
<td class="nump">84,900<span></span>
</td>
<td class="nump">75,188<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="ro">
<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</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">11,135<span></span>
</td>
<td class="nump">15,305<span></span>
</td>
<td class="nump">18,253<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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">350,648<span></span>
</td>
<td class="nump">296,352<span></span>
</td>
<td class="nump">220,547<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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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 | 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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">326,284<span></span>
</td>
<td class="nump">279,282<span></span>
</td>
<td class="nump">205,193<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">24,364<span></span>
</td>
<td class="nump">17,070<span></span>
</td>
<td class="nump">15,354<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_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="re">
<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</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 | 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</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">350,648<span></span>
</td>
<td class="nump">296,352<span></span>
</td>
<td class="nump">220,547<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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">186,409<span></span>
</td>
<td class="nump">213,061<span></span>
</td>
<td class="nump">191,269<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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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 | 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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">164,520<span></span>
</td>
<td class="nump">179,865<span></span>
</td>
<td class="nump">161,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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | 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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">21,889<span></span>
</td>
<td class="nump">33,196<span></span>
</td>
<td class="nump">29,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_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="re">
<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</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 | 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</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">186,409<span></span>
</td>
<td class="nump">213,061<span></span>
</td>
<td class="nump">191,269<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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">467,513<span></span>
</td>
<td class="nump">430,318<span></span>
</td>
<td class="nump">384,521<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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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 | 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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">429,224<span></span>
</td>
<td class="nump">393,521<span></span>
</td>
<td class="nump">349,387<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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</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">38,289<span></span>
</td>
<td class="nump">36,797<span></span>
</td>
<td class="nump">35,134<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="re">
<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</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 | 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</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">467,513<span></span>
</td>
<td class="nump">430,318<span></span>
</td>
<td class="nump">384,521<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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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,127<span></span>
</td>
<td class="nump">23,479<span></span>
</td>
<td class="nump">21,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_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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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 | 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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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 | 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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">21,127<span></span>
</td>
<td class="nump">23,479<span></span>
</td>
<td class="nump">21,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_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="re">
<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</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 | 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</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">21,127<span></span>
</td>
<td class="nump">23,479<span></span>
</td>
<td class="nump">21,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_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="re">
<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</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">17,802<span></span>
</td>
<td class="nump">23,012<span></span>
</td>
<td class="nump">23,658<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="ro">
<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</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">17,802<span></span>
</td>
<td class="nump">23,012<span></span>
</td>
<td class="nump">23,658<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="re">
<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</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>
</table>
<div style="display: none;">
<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_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=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_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_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_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>90
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596923248520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DISAGGREGATION OF REVENUE - Additional Information (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2020</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_srt_RangeAxis=srt_MinimumMember', window );">Minimum</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term (in years)</a></td>
<td class="text">1 year<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 (in years)</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term (in years)</a></td>
<td class="text">10 years<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 (in years)</a></td>
<td class="text">5 years<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_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>91
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596998822856">
<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, 2020 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue</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">$ 461,378<span></span>
</td>
</tr>
<tr 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</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">412,694<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">1,094,185<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_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized', window );">Recognition of deferred revenue</a></td>
<td class="num">(1,045,501)<span></span>
</td>
</tr>
<tr class="re">
<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">461,378<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</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">375,838<span></span>
</td>
</tr>
<tr 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</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">375,838<span></span>
</td>
</tr>
<tr class="re">
<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">422,742<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</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">35,487<span></span>
</td>
</tr>
<tr 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</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">35,487<span></span>
</td>
</tr>
<tr class="re">
<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">36,945<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</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">1,369<span></span>
</td>
</tr>
<tr 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</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">1,369<span></span>
</td>
</tr>
<tr class="re">
<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,691<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Including New Contract Revenue, Recognized</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_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized</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_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=121556615&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=121604090&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=121556615&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_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>92
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596997305944">
<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, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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,590<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=2021-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-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</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=121604090&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=121604090&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=121604090&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=2021-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=2021-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>93
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597013227432">
<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, 2020</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_CapitalizedContractCostLineItems', window );"><strong>Capitalized Contract Cost</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">$ 32.3<span></span>
</td>
<td class="nump">$ 29.8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">$ 11.9<span></span>
</td>
<td class="nump">$ 11.5<span></span>
</td>
<td class="nump">$ 9.6<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</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 (in years)</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</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 (in years)</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>94
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140597001263944">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SUBSEQUENT EVENTS (Details) - USD ($)<br> $ / shares in Units, $ in Millions</strong></div></th>
<th class="th"><div>Feb. 09, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event</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_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Goldman Sachs Bank USA | Senior Unsecured Bridge Loan Facility</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_SubsequentEventLineItems', window );"><strong>Subsequent Event</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_LineOfCreditFacilityCurrentBorrowingCapacity', window );">Long-term line of credit</a></td>
<td class="nump">$ 1,600<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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Goldman Sachs Bank USA | Senior Unsecured Bridge Loan Facility | 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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event</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_DebtInstrumentTerm', window );">Debt Instrument, Term</a></td>
<td class="text">364 days<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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Merger Sub</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_SubsequentEventLineItems', window );"><strong>Subsequent Event</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_BusinessAcquisitionOptionConversionPrice', window );">Option conversion price (per share)</a></td>
<td class="nump">$ 34.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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | NIC, Inc</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_SubsequentEventLineItems', window );"><strong>Subsequent Event</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_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.0001<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_BusinessCombinationTerminationFee', window );">Termination fee</a></td>
<td class="nump">$ 55<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_BusinessAcquisitionOptionConversionPrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Acquisition, Option Conversion 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_BusinessAcquisitionOptionConversionPrice</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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_BusinessCombinationTerminationFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Termination Fee</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_BusinessCombinationTerminationFee</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_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_DebtInstrumentTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentTerm</td>
</tr>
<tr>
<td style="padding-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_LineOfCreditFacilityCurrentBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any 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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SubsequentEventLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.</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_SubsequentEventLineItems</td>
</tr>
<tr>
<td style="padding-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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityAxis=tyl_GoldmanSachsBankUSAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LineOfCreditFacilityAxis=tyl_GoldmanSachsBankUSAMember</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=tyl_SeniorUnsecuredBridgeLoanFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_SeniorUnsecuredBridgeLoanFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=us-gaap_ScenarioPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=us-gaap_ScenarioPlanMember</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_MergerSubMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_MergerSubMember</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_NICIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_NICIncMember</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>95
<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.20.4</span><table class="report" border="0" cellspacing="2" id="idm140596996962936">
<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, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2020</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_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">$ 283,285<span></span>
</td>
<td class="nump">$ 285,746<span></span>
</td>
<td class="nump">$ 271,091<span></span>
</td>
<td class="nump">$ 276,541<span></span>
</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">$ 1,116,663<span></span>
</td>
<td class="nump">$ 1,086,427<span></span>
</td>
<td class="nump">$ 935,282<span></span>
</td>
</tr>
<tr class="re">
<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">138,669<span></span>
</td>
<td class="nump">143,509<span></span>
</td>
<td class="nump">131,203<span></span>
</td>
<td class="nump">129,131<span></span>
</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">542,512<span></span>
</td>
<td class="nump">516,900<span></span>
</td>
<td class="nump">439,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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">48,412<span></span>
</td>
<td class="nump">49,936<span></span>
</td>
<td class="nump">41,811<span></span>
</td>
<td class="nump">34,883<span></span>
</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">175,042<span></span>
</td>
<td class="nump">159,838<span></span>
</td>
<td class="nump">155,870<span></span>
</td>
</tr>
<tr class="re">
<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">$ 54,094<span></span>
</td>
<td class="nump">$ 39,284<span></span>
</td>
<td class="nump">$ 53,892<span></span>
</td>
<td class="nump">$ 47,550<span></span>
</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">$ 194,820<span></span>
</td>
<td class="nump">$ 146,527<span></span>
</td>
<td class="nump">$ 147,462<span></span>
</td>
</tr>
<tr class="ro">
<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.29<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 1.30<span></span>
</td>
<td class="nump">$ 1.16<span></span>
</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">$ 4.69<span></span>
</td>
<td class="nump">$ 3.65<span></span>
</td>
<td class="nump">$ 3.68<span></span>
</td>
</tr>
<tr class="re">
<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 &#160;&#160; earnings per share (in shares)</a></td>
<td class="nump">41,925<span></span>
</td>
<td class="nump">41,606<span></span>
</td>
<td class="nump">41,416<span></span>
</td>
<td class="nump">41,144<span></span>
</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">41,526<span></span>
</td>
<td class="nump">40,105<span></span>
</td>
<td class="nump">40,123<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=120380238&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120380238&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&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 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 10: 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 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1337-109256<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 8: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&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>EXCEL
<SEQUENCE>96
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( /"$4U('04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " #PA%-2@"CF8NX    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+!
M:L,P#(9?9?B>*':@4)/FTM%3!X,5-G8SMMJ:Q8FQ-9*^_1RO31G; ^QHZ?>G
M3Z!&>ZF'@,]A\!C(8GR87-='J?V&G8F\!(CZC$[%,B7ZU#P.P2E*SW "K_2'
M.B&(JEJ!0U)&D8(96/B%R-K&:*D#*AK"%6_T@O>?H<LPHP$[=-A3!%YR8.T\
MT5^FKH$[8(81!A>_"V@68J[^B<T=8-?D%.V2&L>Q'.N<2SMP>'O:O^1U"]M'
M4KW&]"M:21>/&W:;_%IO'P\[UHI*\*(2!5\?^$K6:\G%^^SZP^\N[ 9CC_8?
M&]\$VP9^W47[!5!+ P04    " #PA%-2F5R<(Q &  "<)P  $P   'AL+W1H
M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03<VEVV[29A.U.
M'X416(UL>621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X
M8-DOV]:[MR_>X%<R)!%!,!FGK_# "J5,7K5::0##.'W)$Q+#W(*+"$MX%,O6
M7.!;&B\CUNJTV]U6A&ELH1A'9&!]7BQH0-!445IO7R"TY1\S^!7+5(UEHP$3
M5T$FN8BT\OELQ?S:WCYES^DZ'3*!;C ;6"!_SF^GY$Y:B.%4PL3 :F<_5FO'
MT=)(@(+)?90%NDGVH],5"#(-.SJ=6,YV?/;$[9^,RMIT-&T:X./Q>#BVR]*+
M<!P$X%&[GL*=]&R_I$$)M*-IT&38]MJND::JC5-/T_=]W^N;:)P*C5M/TVMW
MW=..B<:MT'@-OO%/A\.NB<:KT'3K:28G_:YKI.D6:$)&X^MZ$A6UY4#3( !8
M<';6S-(#EEXI^G64&MD=N]U!7/!8[CF)$?[&Q036:=(9EC1&<IV0!0X -\31
M3%!\KT&VBN#"DM)<D-;/*;50&@B:R('U1X(AQ=RO_?67N\FD,WJ=?3K.:Y1_
M::L!I^V[F\^3_'/HY)^GD]=-0LYPO"P)\?LC6V&')VX[$W(Z'&="?,_V]I&E
M)3+/[_D*ZTX\9Q]6EK!=S\_DGHQR([O=]EA]]D]';B/7J<"S(M>41B1%G\@M
MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7
MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V<
M/!T3$LV4"P9!AI<D)A*I.7Y-2!/^*Z7:_IS30/"4+R3Z2I&/:;,CIW0FS>@S
M&L%&KQMUAVC2/'K^!?F<-0H<D1L= F<;LT8AA&F[\!ZO)(Z:K<(1*T(^8ADV
M&G*U%H&V<:F$8%H2QM%X3M*T$?Q9K#63/F#([,V1=<[6D0X1DEXW0CYBSHN0
M$;\>ACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0'
MHYI9";V$5FJ?JH<T/J@>,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y
M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RS<C'5*^3*=@Y
MG\#L_6@^GO'M^MDDA*^:62TC%I!+@;-!)+C\B\KP*L0)Z&1;)0G+5--E-XH2
MGD(;;NE3]4J5U^6ON2BX/%ODZ:^A=#XLS_D\7^>TS0LS0[=R2^JVE+ZU)CA*
M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D*
MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-#
MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B
M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P
MOFH]M!5.S_Y9K<B?#!%.%@L22&.4%Z9*HO,94[[G*TG$53B_13.V$I<8O./F
MQW%.4[@2=K8/ C*YNSFI>F4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W
MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2
MD 83 <V4R43P H)DIAR F/H+O?(,N2D5SJT^.7]%+(.&3E[2)1(4BK ,!2$7
M<N/O[Y-J=XS7^BR!;814,F35%\I#B<$],W)#V%0E\Z[:)@N%V^)4S;L:OB9@
M2\-Z;ITM)__;7M0]M!<]1O.CF> >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F
M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+
M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5
M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0    (
M /"$4U(6Z_>,1P8  &(9   8    >&PO=V]R:W-H965T<R]S:&5E=#$N>&UL
MI9E=;YM(%(:ON[]BY%955XIC&&SCM$DDAR2MM_FP8K?=[&HOQC V*##CS@QQ
M_._W#&!PLWA VEXT!G->'N;C/8?CTPT73S*D5*&7)&;RK!,JM?[8ZTD_I F1
MQWQ-&7RSY"(A"@[%JB?7@I(@"TKB'K:L82\A$>N<GV;GIN+\E*<JCAB="B33
M)"%B>T%COCGKV)W=B8=H%2I]HG=^NB8K.J/JVWHJX*A7J@110IF,.$."+L\Z
M8_OCI>/J@.R*[Q'=R+W/2#_*@O,G?3 )SCJ6)J(Q]966(/#GF7HTCK42</PL
M1#OE/77@_N>=^G7V\/ P"R*IQ^,?4:#"L\ZH@P*Z)&FL'OCF"RT>:*#U?![+
M['^TR:_MXP[R4ZEX4@0#01*Q_"]Y*09B+V!D'0C 10!^%6#W#P0X18#S.F!X
M(*!?!/2SD<D?)1N'2Z+(^:G@&R3TU:"F/V2#F47#XT=,S_M,"?@V@CAU[O%G
M*E 7?9M=H@_O?C_M*1#57_7\0N B%\ '!&R,;CE3H417+*#!KP(]H"F1\ [I
M AL5+ZE_C!S["&$+6S5 GCG\FBZ.D>UFX79-^*4Y_(^4P=VMNKO_\C1..<!.
MIN<8!_CO\4(J 8O\'X-DOY3L9Y+]0P/$_12VGD+S[9K6S9@YW+:Z7PT4@Y)B
MT(YBS%A*8O1 UURH.ARSCA(I-> ,2YQA.YPI%1$/]&I$L"-JQZ=!J5A_O[UY
MT[ &W)+--2IZJ1 :[3J2/HS4(R7"R&=6ZW9MW'5L ]>HY!JU7$B"@)-G1GQX
M&LU:2Q)+TSR>E$PG1ITKIB*UA:&**;I+DP45=2QF#;MK6_W1P$!C6Y4_6FUX
M'N@JTCL8!NN.)+6SUB T?[RY>D#S*^_+W?W-_>?)U>P(3>Z\8Q/EGHO;;2@G
MS.<"YH_HJ3Q",W5@@36H75Z9H' %A=M S<D+F@2PS*)EY&=DAHEMD'0'7>Q8
MSHEQ6]J5-]M.&\)Q$ @JI1XP 8FTELLL-+ M&\TI8UL)CS<EXFE#MB;$RNMM
MLUN_1O3@J!;0+#.-">-')J+*]VVS8?]WT ZM,K/._$\33N7[MMFN7^-,N51@
MLG]%:^3QH![,K.@.+-PWL56^;S<8?T8&]?AA%+/ B8M-()71VV9WON$Z\4Q#
MSDRNVB#BVD[7<2WCUJMLWC9[]#Q2X/!\B2CQ0^3'1,I:)+.*=W][>W^'9O-[
M[^L1>F<=PS:<CA_0]_'--Y.)X<K_<8-M"Q)$;(7D-EGPN ZQ2>#QQ@1263PV
MF[)..^5XT1<_)&P%)QC:A!&<$5F"HN)U"5XP-F@_SHRC55D^;F7Y/^ ]KOO$
M^(:A&25@B31 $RG3^F77H'G'36B5U^-67O^=QRE3\(J;E1BB=M$U*)F!*F?'
MK9Q]5QSFA9=>:MI0TWHPL^(CE2:RRN&QV9DGWO4#&J=!I+A 8Z4H.&J6MZ]C
MLJKE^E\E/JZ\'K?R^@F#A9YW#'0-379C6(MF5FP8LLKIL=FH]\I6@3Q(B"LN
M:O-T@\X-$;"KQ[Y/00AD@ES2Q%@E 6SV[X)QEI X1A>IA*_K3;=!IZG4QU42
MP*V*_:N$BI5>^9]!0860+),U8?7#9Q9L0G,JWW=:U?VS$*S,!-0@TPA4^;_3
MJL2?IHLX\F$G<E*WWB\+E4&FHKM^S^>VX^(1%*BNKIJ?ZR J?W=:^3N,1P)V
M,%/<?X(","10>J'[5(%/,)TMZ[HVA?)P#ZQO#=RAZQRBVFNQF UY]QXK]UZ
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
MBP,64<IB#]/!14C81OI.K0_X!L+3-@G&TH.XVU%UP%*6)!ZJ@YN0L)WTV3I
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
M>\\#UE]XV:'M9#4,AA541=W_Y2^#(<X&D&AF !T&4'- ,#. #0/86P<$PX!
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
MLF(]1\KC4$/$4U'7RKFP::%O+20JHIBM#RBCD77^C^ ("VB<FF017!*F=.8
MC4V*@[D5AY.L4,>>3IJI]=UDY+.(6DG)QF'FV" XPQP]S=79-_:5:)[TFP^M
MI\\T^Z^^Q[OCVQ6?]3L%QOTOY-.F?T=BFJ9_9>-GWH"G6Z\46YC2_QC#HIK^
M+8C^0R?W^KV 1]EULM*7.\&A-BD _'\K97?ZH!XPOHMR]P]02P,$%     @
M\(134LB#E8UZ!P  ."8  !@   !X;"]W;W)K<VAE971S+W-H965T-BYX;6R]
M6MMNVS@0_17"*+ M$-?B1;<B"=#$3FM@NQLT[>ZS8M&QMI+H2G2=_/V2LF*9
M%U%NFO0ED>R9T9GAD.>0UNF65=_J%:4<W!=Y69^-5IROWTTF]6)%BZ1^R]:T
M%-\L654D7-Q6=Y-Z7=$D;9R*?((\+Y@425:.SD^;SZZK\U.VX7E6TNL*U)NB
M2*J'"YJS[=D(CAX_^)S=K;C\8')^ND[NZ WE7]?7E;B;[*.D64'+.F,EJ.CR
M;/0>OIN3QJ&Q^">CV_K@&LA4;AG[)F_FZ=G(DXAH3A=<ADC$OQ_TDN:YC"1P
M?&^#CO;/E(Z'UX_1KYKD13*W24TO6?YOEO+5V2@:@90NDTW./[/M1]HFY,MX
M"Y;7S5^P;6V]$5AL:LZ*UED@*+)R]S^Y;PMQX$""'@?4.B#-P>][ FX=L.8
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
MYG)%$Z$(I8'X?LD8?[R1K\7L7Q8[_Q]02P,$%     @ \(134K;[@5VA*0
M784  !@   !X;"]W;W)K<VAE971S+W-H965T-RYX;6SM/6MSVT:2?P6ER][:
M5:2LAU^)'5?)DI)HRY9TIIS<UM5]& )#$C$(,!A0-/?77S_G 8*RD]VKK;VZ
M#XE%$C/3T]/O[FF\WC3M)[>PMLL^+ZO:?7^PZ+K5=T^>N'QAE\8=-BM;PR^S
MIEV:#CZV\R=NU5I3T*!E]>3DZ.CYDZ4IZX,WK^F[V_;-ZV;=565M;]O,K9=+
MTV[?VJK9?']P?*!??"CGBPZ_>/+F]<K,[<1V'U>W+7QZXF<IRJ6M7=G466MG
MWQ^<'7_W]BD^3P_\7-J-B_[.<"?3IOF$'ZZ*[P^.$"!;V;S#&0S\<V_/;57A
M1 #&;S+G@5\2!\9_Z^P_T-YA+U/C['E3_5(6W>+[@Y<'66%G9EUU'YK-3U;V
M\PSGRYO*T?^S#3_[]/0@R]>N:Y8R&"!8EC7_:SX+'J(!+X_V##B1 2<$-R]$
M4%Z8SKQYW3:;K,6G83;\@[9*HP&XLL9#F70M_%K"N.[-Y./[]V<?_IK=_)!-
MKGZ\OOKAZOSL^BX[.S^_^7A]=W7]8W9[\^[J_.IR\OI)!^OAJ">YS/V6YS[9
M,_?Q2?:^J;N%RR[KPA;I!$\ 4 _MB4+[]N3!&2]L?IB='H^RDZ.3HP?F._6[
M/Z7Y3O?,=Y;GS;KNRGJ>W395F9?69?]U-G5="]3RWP\L\-0O\)06>/J_@MY_
MU-S9Q>7D_,/5[=W5S34^_O;CY.KZ<C+)?K'9JFWNR\)F9=W9>6LZ6V2NF74;
MT]K,;5UGERXS=0$,6/&/MKTO<\ 3"(2L6\ $ZRE@#K[/NZ8= ?EVB\S KT"\
M&;!=U>2FRN;-O6UK8&:0(+AJ8>]!'JQH9A &GT#ZF&S:-J;(<)M9,XN@:*HU
M<C##X=?OFLP416N=(S#*FB44LGIG\T7=5,U\FSWZ]W][>7)R].KJCOXX?O4X
MJZTM'.R[A(7+:HMKY64'1S_*F!KP+Y!^#; 6+=G _.W.1C+XCX8=9E<U@E+B
MVH" @%/X=P;PP=<P\NK.PSX":/-J72#=^6WB2@O3%O2AK%UGJLKPE 5P-L!6
MP]*.O@#Z+&L8/:)1>!*Y;3OX3D0&/#?"U8MUWF7+IBAG94YSP=>F:F!9.B:8
M$FA_C6"@_.YL;>J<(7'KU:II.YY;Y\S6#I]MUJV2!AVFJ5SC]^S64Y>WY0I7
M&Z.\C([,K7.@#1?M&1"L/_NCFA@S\8=EVM;4<TN4 [A=E#!#.#J@BZK\FR4"
MN-M6<$KPVSW0:997S;I@]) &:)L:B+0 JJ2SF\$X0KZ2EBYNQ_R3 O#@X:X
MZ=O,K%9P' Z.&)2> ^3D-'7")^8S?O?KNBU=49(^0K)9KD#,(/TA_.<W/U]=
MC(^_S6X!:+L$:&'E]Z:%#:.T&]%#OS1M560_65/!\=VT<U.7?V.:+VQ> 4H+
M>@P F8**_H1SFS#S2F=^=*#?'3Q6K HQ,&>QAH>YVF8]7\!T-.W'P\DAH10_
M; @4IEH'XL&!'H3E@0;-NELT+?%&5BY7%9T>[K\&Y,.$+EM:X]8M+X7K(N7B
MG/=ENTZX P@=! 7HW5JE$,AF0> H^VUM@#I@:N+8A04 VG%9CU>5 7IJVH+X
M ,=-D7)15%3ELNQ,)$X6ZZYH-G@<ORS*RN()(V6N:S.%3RAD\GR-<A'(#9""
MIT>@SM95A;LS]-ET <N;$GY9 -PH_I!7&#= "6VSS)!HE!5G)3)<"90#2% 2
MJ\K?UB5\V!)\N7&+; :FD\N*-<'CD;BNA>E98D5( _"*-:\B,A,D!\XHI.;I
M@%9@_!-;^'/!'XQS#0"'AYHW<(PE"@<F0\!(RR(03JSAL4@%M9T;M+( 5XP:
M&,L8N+=$6L@,L]*A)-U:TQ)E'V9O;6[6#@4/[@(HC\0,RA_< 0"=S('' T [
M8$*D]]8B-#@ B*@V'<#/0-K9S#)[^:/I'0C.[(\#1."615G==-F43WB+AB?*
M#\MBUH$<S#JP2DGP*<L0QUC+OPI-R%*>\(3":]PUD.F2)7 !6G5+/T:*!20+
M;,GZOV&X'$DX<@ 5B "^2M0O+%?,+4I*.(P-F+KX;UC#,Z/LF+ .S+%5/DO9
M"V0H_MS,9JRT4!54)4IB8)MR1BS->A[VOVQ:E(FH[O HG%M;U@[$":*I23S!
MI%F^ .UF0; [E3'PB%EU2KX;. O@Q*()"$2)?'S\"F@.M'1KYOCHQDX)+RB0
M29+,@"3JG#0CLA2H/WP,B+1; \F!C+:(CR5LKVLC*0 H*I%%D.IBG>V%.)Q&
M@R+@,+M9DY)1^09\QC"7@$Z0[B73)\S2V=QO9\$"FWC1S"QS(I*'A1-IME:.
M%[\1#/-":#-$-AAHFDH5N=?01H C]P=H- ?:O$4 \51B;A\!A=<#*^,XXB/=
MXA6Z6VX%B]C=.>!4] 1@$)QB/-.BH=VKZ(3C W:"/W )%G\+8)%19D'$K5:"
M'6$%6!)UIT4I@B0/+J*J!^*Q=8T62MNN5\",1%D;&ZT%YPDB@<T_U"3&@3@S
MOS8J]](]T[9*WOL8 1LC8"!R',J/P^P.?P3ILB9+$_EVO9R">8$"U)HE"$K\
M2$R%$PN+\+1(WP#L;VL4@VALBNQ ^H>]H)U0CP%4&]F#:AG5MB-<16))SQD,
MPMF,M1E@'14"3BIF"TGJ*BM*>(KH7^P7XO^R90&&?(Z&AD4\\O"+TH&TA>\
MRRTXGV 87)P?/$8$1&IBH5*$G / TU<)*\"@_;SBI0$Q*A<!768*-E8GQXLR
M"0TV,6![,FJTJU/4!!6% /3:H>&.Q@A)[_[SM&F0V31N)@P&F]N248E K-V.
M. <147;LX2 7@%0I^+31J, 'F$,*91#4L&.0:C7)I=);=GW5HP(4$406*XFU
M%Z]<=.2'V0_B6W4@PT%Z+MF+MNA%9^ #$_%Y/YBU73EL3/HSC TTH!X;*V5D
M3&^3@X2QP/E(E-X#\W0:;-WH.^\BZ8R'V3M:86=..FZV4AN6HAGLNFP*EIJF
M ^TS70O!. :3A7:^S?$?(,0OTUYK/;6J@8/^?.;*.3I-CE72U-H:M">8C;3:
M;(V<K^ <9I/^YE4"]_:OFR8#'#75P$[^H 86 W70K,7)Q,#Q*DBA!]V1' <+
M2L;F_@,(7A5Y94PO2D\YVG[BCZHT1=I#P5$C$+"--BA@JQ3@0=B_+@$' M39
M#O&0@PB&,[^G@TK1*/2PLDAPM6!LU%^:T08_HC.Z:#8DA)B@10V#HU0N8]=>
M]<)8@QPZ!&2+BEPW?$( .P[Z; M6C23P=CGG"\1#4DA,7_**$>?DJ@ P0?7$
M @1U;8MZM+7L?Z J!K2:V&Z&:<HVK#:U:NF@65>3#B)O91KT*.@*"T^('M.A
MA]D9R-:1>D?>5L,#4Z$W;+>-_KD&FWJW0LZE]S LL1 I50DC,'&CJ\=K@)*J
M&"MD[W](Q644YG 2QO(1%%UT$QR583<%N0*,1CB-%Z=_TA/NFHX]0M=494'T
MJ#)F]OOT FEA<@LMVT<FC\(R.BE@%DR:$)W1$ @S"(4=O;8$.B"W:6"Q#9KZ
M1?;-BV<O#Y]E2T >HA-#4NC",BCWP#M+K__JAB(F8+&0VSIMVK;9$-^#8X,4
MC^2.+G>7S4Q.)D.(-Y$,QU/H#!M5&J2!/R,7^MZ4<HCB9N"D,'UK-G7VS=.C
M(P]I;R4?%@&G=$J,;0C-WEW!C$(.PAC'SJQAN_$BR&+PR- ^P!A%Q^SK\:1&
M#UO\IJZ1U@TJ+T>Z#)Z=-TU!K,E0%&5!;FD@8T/*Q)0MC0 F;.>P_J3$ ![-
M&J83U_,!@(!" 8FSTM*AE' >X&4T+1UUM J(!X7K%4X)OG&#9+P1+P]H'+43
M3Q*&&9I'(Y5!3^TC7#KDKP<)XYEC% =%)-)Q^T)F$: I7!N*6PG(OQ_(GT =
M@0P::6"&S L,M,+4L:/N@._154?"\'99%/CVL1\W8EA)Q *HL >0FZ32PC,L
ML)$6"J @U*08[I0C9B,&_+\/5]?G5[?O+B<8[C^_N9[<O+NZ.*/X/UKVB7 )
M42C@I8Y#K5YL("FAXD8:0Q5>;S6F"L*#^ \8#<P&ZZ.S"#PHIZK:CIM-C:[:
M&0 <(X?\.)UM:BH3:VT54K&59E$5UD:LUP \/'8(%@C(4+O /.$](B*G( QJ
M#=@8'RQ9,*BF"%&H--DG-"&Z0#X1R6*UIXP2 ,G[&++8Y$4T")WE99NOE^2
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
M1[;FL+L)CC\&'DT$Q-)V/>7+P8)MXE$Q7L% 4<;G,#_)##POGP!9E&TQ!EK
M\3)/S/E _%Q_AN<Z/*"T@2B%8\G1B;B$K$RVCLA:0A3.I%YCQ/"RK"6''>0Q
MFJMH<,DY2"J,JH KUB_R,*&B4](;F**'G,&Y- ,ED&O8OMH*X,)E&LTOETM;
ME.PMA1@ ':%?C!*#J!8D2^RYS(>"SLCR0-$^!5H=<;''%^PS<7ATBJ_1R_$/
MJIZ)'EDBQ[IVV"^-V>[/&.IU)2XXH-'9#QV$?91-&Y$;PQ:@+WG?T=6QZ*=0
MO)I:1$X]NO.Z^2LT YC4Q;^D?CY7R>LE=6" F(R7)=B['?J!PG\A4"_.3U^&
M_RM)0!0:PY9=,.!4(20N">?GN [>LBW3<_>8C+B2B:J4Q?&.A_JZJQCC]#RG
MFPCH2OWK6PS*^G,[UZ.?2% 6ZP]#O&IN:_*UMYPI8;_Z]GR2&2!/#7'Y* W8
M^6"^.)L*#F6N0QKHLR @L^QJ0:$!7AH8<ST'8^&S5A>U>+6**[74%:.MX8)C
M>&",%HY7R[H]7,,-&=$,J,)82-Y@&%+$0F^;*7&#'K(;H3/,XV(!I2P]* 0(
M<"QFP#V-*;G.G. /.)AD.I%<.1A(I3$[4D9.2E;BLFW:&$'?6GV Q8*(",Z>
MK?% ?]*(^B769A(!?AARGG,=X$/PU@](]_R5WG(R7&53&QPVI4'05W'6X2T=
MG6JN[](?>_=.-%63W/GQRA>(@Y+'%!#!RR<]+1'.FNM$5(A_S843J:2(LX<A
MGK-32-*'NXSY;C\UM:8+A!_H*!&DP%-V7M:U2#@*X2'8)$N)]D7Z?-',99Z(
MP>XY @%D3KJA&AY ZV8@=IOHH(5QR3XP5DR2@" RGZA<UW'ISZZ1TG'0JTQS
MGQ*L5AY#!L'++8EW;VNV..$D!^'"R,<,[RA,JRU7_>CU%;^Z8'@G_N%Y!LN!
M@QPUM10M]*,Q)C%MX4F$/UE*"F(X.AN.G .6,, :3%H.)RV$ >-5B1S IJPP
M\B5WEUIK.JWC,$&(JIKR$=E@6D\FMSUW@,X_F$]$L-M(I^&%B%UP?/%62'\T
MY#8B65T^Q&5LA@1^7TEU,16E\QTPA\-42#*=K5OX%EPPTW5-6]MM'!D.!X&(
MN0?E3Q7E6BN5:.#6=FV)Q(U[XE7"JCI4W,V0YT,^H>.*;ZDI@(;!$_.A1,D3
M^&R%U:6FOW\V1GF<H@B_IH)G)F_+X=V=HL'!J63E:!J/M<1*"^;QP$QTI!7_
M](4UX\AS=#YE6K232^8M7 _R[I34BA/9 BG4>;F"(Q%>C<@,M6"*HSA.WF"<
M<V&J6<B9$AP2L!P",0F'D(C&8'UP.+L%'$#!%XV,!'T6-I3?L&4^5/3!A;V[
MM7P]<F?/!:%*Z_>B=%0(]S>S&9E'GA&P((++6'C+00(!BHNFY1NO0G[!52:[
MB)R;"-4I57I90;3$N9:XT@L&G$W.L^='S\?'1^-GS\:GSWUV&SX]/?+QSU9#
M+6*B1.Z:=U%,-F\QM"0&X8T&5VF26MW(E'YVS*?8,C=S@T%K^HZGUE&/I!A
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
M1P1_=)D_ ,TE2DGA+'LK>R#R(P^SR\\&F=A%(1;=VI!?:=(*O-!1=L!/W)N
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
MAY XBKL'F8S?S%2Z4%H0K-Q4>GR)?3P!^=A-G\G!(_?U"RFHL;F]J\\;>;4
MKNEO=OP=D_5/G(0I-K9^>/O4Z#T>AXIK]S4L:8L"25$FW!45M.O$+,[9Q(EF
M+%V4;NN-"^*T'@).$AU^#XD[) 7\\9M4K/.12D^+;#OIQ3@;E:7C;2];:8->
MEEO\PH,H\,(@[,:J6C50VZ1<;B/VH]X*,-EBN\(@"-_8YMN-_!8T:L2!70:P
MVH'LIS4[7')ZE(7U6T\[A3,=RZ4E6T=:-#IPQ96F1?B-@S%^'9=L$/<(WW-Q
MU>YD7#^U;QJ\P>3?^Z17./5FM+8:=[1E?Q&$*\I[Q\?=$(<%H@^"%<G-C4),
M7-JC?SL-E>FQR9% &ETDEQ"@D0" XQ9=?0H\<_U7R;E]$MNEMQ8+,0'X-3TH
MQ1X0X D3TG45K.CKDM8#^@JE(/DFG5UEQZFP[F&4K^J6131JGVQ'I'B.1&_Y
M19(J[D7"\0QVT9?:"5(E)*>6OKM(-BDZ>?@U4MR @2XV1/4.O3.-K#(V?_1&
M>;"@.'8Q-_E6+EN+=:30^H!K.&O_%M1.WN,3BR$ZL^C579BC)OF+)U:V2;MI
M%.ROGW1O7C\I'?POA__:9@/_I\*J"\#@F]=+, +MN:TJBH?5W?<'QP?1MQ@@
M_?[@[/B[LY.#)S R//[F]0KLH/=R];&R,QAZ=/CBV0'')?5#UZQP2KP;WS5+
M^G-A#<"(#SS#E!CX!_(!%\"Z.P+OS?\ 4$L#!!0    ( /"$4U)AC1M[)08
M  @.   8    >&PO=V]R:W-H965T<R]S:&5E=#@N>&ULG5=;;]LV%/XK!UZP
MK8#B:]JF71(@25O$0+-D3;H^#'N@),IB0Y,J2=GQO]]WJ(N=(NZ&O=@2R7/_
MSG>HD[5U#[Z4,M#C4AM_.BA#J-Z.1CXKY5+XH:VDP4YAW5($O+K%R%=.BCP*
M+?5H.AZ_&BV%,H.SD[AVZ\Y.;!VT,O+6D:^72^$V%U+;]>E@,N@6/JE%&7AA
M='92B86\D^%S=>OP-NJUY&HIC5?6D)/%Z>!\\O;BB,_' W\JN?8[S\21I-8^
M\,L\/QV,V2&I9198@\#?2EY*K5D1W/C6ZAST)EEP][G3_B'&CEA2X>6EU5]4
M'LK3P?& <EF(6H=/=GTEVWA>LK[,:A]_:=V<G<T&E-4^V&4K# ^6RC3_XK'-
MPX[ \7B/P+05F$:_&T/1RW<BB+,39]?D^#2T\4,,-4K#.66X*'?!85=!+IR=
M7_[Q>7XWOY_?_'YW,@K0R.NCK)6^:*2G>Z0G4[JV)I2>WIM<YD\5C.!*[\^T
M\^=B^D.-[V0VI-DDH>EX.OZ!OED?WRSJF^W1=U%[K'A/EW:9*B,8"I[^.D]]
M<$#$WS\P<=2;.(HFCOYG"O^[-(*>O*$;0S=9L*ET-!LG<2VAM02 O]7*R9PR
MZ0+:C83W,GBR!8*K72AM[27=RZPT5MN%DCZACR&G7P>75_>#%PD)0\KDP)3;
M'&HTL#(+JIQ=J1RFH.5K[3; ED$SHNT"^8T/<NDIE")@OY#.DZ"BUGH#14$N
MG @R3TB:_##80_S1G1!WY*VN8\L%VZHCH345(FO=A2'K=BPE5#B[A%SM,DE:
M^4 +::03G99& +YF*"6[+6"K$AL6'M)]*7$H"$T5%)3H41Q5T+06<+B"V*-"
M_TJX?3 =#X_01UJSYDJH')%0)GPYI+F)H$L(;E !K&A:"5TW3L#K #.%4.RX
M>P!=\J:,V;^Z_\5WU6#/M!*ITBJ@!" N#X*0T0YK$/E75"#F%X'Q"LA4*[0V
M.)&8;#F^5&AA$$%L[!BAWQ5EM9J3SSIB63,PLL<[$FVS/F\-@:"ZW7&439B%
M2K5L/ 6<ZJP[O; V7R,U'--W:9L,7W=9&S) /\C4U>SP]/@YA(I&"4>7B4IQ
M:>!(]L"+U[=T936#S].M<+'\<X.NSU-!URIS]A:-"=3VSQ&[]!QB,[M$=)D2
M;*XXA+U#9$P7C/F;^[O!BQZ+Z 4D2==1!6QB#"@PP,///TU>'_T6]=OU869S
MR:%KU>8PERO,K2J6JT(*>0H2?A@R<K=7.)EIQS4M4'?W:RZ.? P\SE8R-E!3
M_#J%,?(84M;MAW)"1H88,:"ZS3,6#J;#<5>:Y'G$3X;'/>0SI +]Q5E@X<F;
MX^'TW_H!E8T[!R^'K_JS*NIB11Q>5)NW'3ND+Y)*L9)D[-Y#"")S-6,E4@)X
M7RXCY;7<_Q1FDWTHBRVUY4&U4AE8[^,EXV<37QOT "F5,)N&RUH(>:"C"&M@
M< N3V#76&-0CHJLVL8W_A60.9MO^V";P_/G(DK;P3[1L^]9'?(%3DIUN8'BU
M\1#[R^%H&22R5+NG;+$OH0G?H?@RY)ND;8FB[=3O/&K9J:.U+NEII!D;T0LN
MC(38,"$2RP(Y<,<JI<A:I'K5H.*^(]">.7<-?,>;VRHCW-YH3\B>ZC@(/G*#
MTGP^3Z@V-O72K038#46HZM".KEC@NJJL8PI,-[ 3 LX@S<9V;!ZOARILHB-;
M,;4PJ@ ;;.EZ;P10MQ- $R[XG.$.1YLY$$O#N(V3?B<[/IIK* I.KE4HH^YG
M%?#&>W"80Z50K[L>Q7+1#&[%:&@*U)7C225B:[?MA+.UXT074OIGJ7_20YN1
MR9/11,H5^4IYZS8)N'DA=,(M;>O8[@GER$^.7*#SF;ZVDY3S:^$;)]$IW%F(
MBP;$>7 <TR;W>^S"!N(<AY=/<M4-Q.CQ6B)R^8C!Z9LIVZ36Y$\SB@W/I,^^
M-9<+W1S*,7H5WP;Y\Z!3Y%N$1\ZR6N5Q>OJ OYCA9O9@<I<-H;,=#-KA<]?)
MT<[M'--J$;]!/,54-1?U?K7_S#EO;O?;X\TWTK5P"P6L:%E =#Q\_7) KOGN
M:%Z"K>)=/[4!@S\^EIB;TO$![!?6ANZ%#?0??V?_ %!+ P04    " #PA%-2
M[=Q7;6(#   0!P  &    'AL+W=O<FMS:&5E=',O<VAE970Y+GAM;*U5;6_;
M-A#^*P<M&%9 U;ML*;,-V(F+%5A2-TU:#,,^T!)E$:5$E:1JI[^^1\I6W&')
MAZ%?I..]//?"N^-L+^1G55.JX=#P5LV=6NONTO=54=.&*$]TM$5))61#-![E
MSE>=I*2T1@WWHR"8^ UAK;.86=Y&+F:BUYRU="-!]4U#Y..*<K&?.Z%S8MRQ
M7:T-PU_,.K*C'ZA^Z#823_Z(4K*&MHJ)%B2MYLXRO%PE1M\J?&1TK\YH,)EL
MA?AL#F_+N1.8@"BGA38(!']?Z17EW !A&%^.F,[HTAB>TR?T-S9WS&5+%+T2
M_!,K=3UW,@=*6I&>ZSNQ_X,>\TD-7B&XLE_8#[H)>BQZI45S-,9SP]KA3P['
M.IP99,$S!M'1(+)Q#XYLE-=$D\5,BCU(HXUHAK"I6FL,CK7F4CYHB5*&=GJQ
MN7NW6=_=_P7+VVM8OW]XN[E9W]Z[<+N^G_D:'1@UOSB"K0:PZ!FP,((;T>I:
MP;HM:?DC@(^1C>%%I_!6T8N(U[3P( Y=B((H> $O'M.-+5[\7+H2VUGJ1Q<V
MG+0:2%O"^DO/.NPS#7\OMTI+;)1_7G"5C*X2ZRKY.97]WV!PRLDF0T_)N-#B
M2!<"QT=I!:("75.H!,<Q9.T.B 8L+FVV5&*!+^%!T:KGML[X"7/XT\#]^DL6
MA='O< %AYD[2^(E8]8R7%@C5.,7!J 4O@36=%%^IB4!!^CK.(4RF[C3"?SQU
MDR2#*]%TO4:O8Z@6HNME42-*"4I4>D\DA?AU"F&0N>DTA#QWDSB%-[ULF>Y1
M:&PJ=C T.H(X<">3"42H'4S@7I)6=4)J8D?_R5,*49Y"$D1HD+IYF*!%@F$E
ML"R*ONDYT1A!27'!%6PP-HY(@UCLV\#XS622A\$KI,+(3;/XU8MW@"6;9&X0
M)(::AFXV";'T9Q[H 5>LHK G"BZBU$MQT#DW$M;:"W&1'7O)C^PP=ZVWBRCT
MHG^),@\^4>@(0W'NY:-TT ^\;.3@6L?=2CA0A<4:RFH:!6,BP^;%SJ$'["%S
MU]OCI:M39%9_B 7OH:-VQ_)'[[_FQS_;4@V5.[N+%;9HW^IA88W<<=TOARWW
MI#Z\%3=$[EBKL.\J- V\:>J '/;O<-"BLSMO*S1N4$O6^&11:1107@FA3P?C
M8'P$%]\!4$L#!!0    ( /"$4U(OW>QQS 4  "0/   9    >&PO=V]R:W-H
M965T<R]S:&5E=#$P+GAM;*U76V_;-A3^*X07#"W V2)UL90E 9S+V@!I$C3>
M^C#L@99HFZLDJB15M_WU.Z0NEF,[2(&]V.(A>>[?1_)L(]5GO>;<H&]%7NKS
MT=J8ZG0RT>F:%TR/9<5+F%E*53 #0[6:Z$IQEKE-13ZAGA=-"B;*T<69DSVJ
MBS-9FUR4_%$A71<%4]\O>2XWYR,RZ@0?Q6IMK&!R<5:Q%7_BYL_J4<%HTFO)
M1,%++62)%%^>CV;D]#*PZ]V"OP3?Z,$WLI$LI/QL![?9^<BS#O&<I\9J8/#W
ME5_Q/+>*P(TOK<Y1;])N''YWVO]PL4,L"Z;YE<P_B<RLST?Q"&5\R>K<?)2;
M][R-)[3Z4IEK]XLVS=K0'Z&TUD86[6;PH!!E\\^^M7D8;(B](QMHNX$ZOQM#
MSLMK9MC%F9(;I.QJT&8_7*AN-S@G2EN4)Z-@5L ^<_'NX>'ZT^W='9K=7Z.'
M^?N;C^CV?CZ[?W=[>7>#9D]/-_.GLXD!2W;])&VU7C9:Z1&MA*(/LC1KC6[*
MC&>["B;@8N\G[?R\I"]JO.;I&/D$(^I1[P5]?A^W[_3YQ^*6,MN(/$>LS-!M
M:5BY$HN<HYG6W&AT+72:2UTKCOZ>+;11T#W_O& VZ,T&SFSP/Z?[1:T6N*>Z
M8BD_'P$R-5=?^>A5IM!\S5&ZAN"Y1J)$Q@Z94M]%N4*LD'5ID%RB59<L( &W
MQFPD^LZ9THC;^B*H#B\67/450@PRQS1LR 'V^A3ZP'!5*:$AQ56EF- L1W-I
MX/>2Y:Q,W7*P1>C$)\ I)$8G:.HG. P]^"(!)I$3A3Z>PN2V@.F76BAP0O&<
M&?@WTOE8U0HB WN@](-(E7R$&J)IA'V2H%]_B2FAOW?#%Y5)T*::&2TLE6A$
M/.S%7J^E'1X))$$Q#7$2)%T0<>!A0J;HL?,0\F*W9?\"WH'PH/\&YJ_>SX?&
MT1N"HSAYVQOOQH>M4YN\F :81CMIC/T8!S1&#RXXL04 :P!@8=$YP=*T+NKV
MNY#*B!_,N9)"+H0VSJ!->5-MUSMFV!.G34^X7+Q34NM#32:?>0)-<^7X#Z2=
M)X-9B,&G%$>@TGX1;)7/NO)IN30;VX,THIC&4?\_5RSCJ&0%:(#MB1=V?U>L
M$M".XL=P>\:_PKE5V:) M#94J'48$Q3@V O0'8?RZ6W7A-CSI^UO1'V7X8A$
MV L)^'8DBV]H K[Y4,(WU)]BXD_?MLC82PE&)9S3$"_@C,0N\FF,$Q*@V5 C
M_P9GMN8.KFPO);:TZ>N"M5+%4ZFRIA>MU-9*P<JRYGI\W&ZZ4SN+FK6HFKXR
M@QH\MP#G-;#;"J,5+[EB#3^S#$X^85G8'N&=&;#>I(D=\V$O?V@#Z#@)PS&!
MLQ0,P7I@/=N<&,1T'.^*28*=_1,_&4?/IN*Q(\\=VQ570F;Z4#=WN!*ZO?^X
MU+>4N\6-8;#V] "?/I/T0/KDKAV@:MA>.T5Y[;I[6?[616,=WD%B3Y!;YNCX
MYV3PU3';_MSLF.978IQ$[8$#' : BKPA[ >3R13[D*[C1#!MEQ(8 WCVY;Z'
M W*0* AIUR38CZ(]Z133GZ:1L+.* ^#GAE0Z&4VB(P23="N@$-$S&0&G/'2C
MC2@:JBG+^AA&!J=,;R%O++IB+P;8!. P&&5U<YN&+6NFLIY0FGYO><%)H-.M
MG;0U +H 8> K>-=@CN#G$KHG\?<D ;9PG XD80M2 H>;E5I/.%O"?0.-?SX1
M!SA7E&E>9Q:>ATD-[Y,LWB6Y5S/N^'#_0*"5DBNXVSER.0G&84]'<(. Y'(;
MC'43MBV5+!RO\%<%[S@'5  %N8.: (S" $! 7$U0Z,&%RW?5 ,3A,**N#I:)
M$@L@J  "T$2P=+Y-/8':Q8 'BU*H2T+0H>OS9/!R@;RNW/L,K@?V4M \8GII
M_P2<-2^?[?+F_?B!J96 NUG.E[#5&T_#$5+-FZP9&%FY=]!"&BBB^US#,Y8K
MNP#FEU*:;F -] _CB_\ 4$L#!!0    ( /"$4U)5?WEO9P(  #(%   9
M>&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;*54RV[;,!#\%4+H48B><1S#-F [
M*6H@08.D:0]%#Y2TLHCPH9)4E/Q]EY2MN&CB2R_B:V=V=L7AO%?ZR30 EKP(
M+LTB:*QM9U%DR@8$-6>J!8DGM=*"6ESJ761:#;3R(,&C-(XGD:!,!LNYW[O3
MR[GJ+&<2[C0QG1!4OZZ!JWX1),%AXY[M&NLVHN6\I3MX /O8WFE<12-+Q01(
MPY0D&NI%L$IFZ]S%^X#O#'IS-">NDD*I)[?85HL@=H* 0VD= \7A&3; N2-"
M&;_WG,&8T@&/YP?VS[YVK*6@!C:*_V"5;1;!-" 5U+3C]E[U7V!?S[GC*Q4W
M_DOZ(3:/ U)VQBJQ!Z,"P>0PTI=]'XX TX\ Z1Z0>MU#(J_RBEJZG&O5$^VB
MD<U-?*D>C>*8=#_EP6H\98BSR]5F<_]X?45NMJOU]F;[;7O],(\L$KOCJ-R3
MK >2] .2)"6W2MK&D&M90?4W082*1EGI0=8Z/<EX!>49R9*0I'$:G^#+QC(S
MSY=]5&99Z@XJ<L-HP3BS#$Q(-IW6("WYN2J,U7@_?IW(E(^9<I\I_[^&GB1Q
M3IR9EI:P"-!J!O0S!.\QDT-=_*TN4BJTC+%$U<0V0&K%T7E,[@BU!/L*H@"-
MO9WYWN(GN1QI>O0A-J90LC/(1&6%;$(PXSQHR"<RR<)IDN,DOPR3=$*^8@:-
MUOI717(9IA=(/PF3>(J :1;&4X>\. _3+"?OM3HZNL<"],Z[U17423M<Z7%W
M?!!6@P_>PH?7Y);J'4/)'&J$QF<7YP'1@T.'A56M=T6A+'K,3QM\U$"[ #RO
ME;*'A4LP/I/+/U!+ P04    " #PA%-2GM"&G/\$   _"P  &0   'AL+W=O
M<FMS:&5E=',O<VAE970Q,BYX;6RM5FUOVS80_BL'+QT2P+,E.:G3-@F0URU
MVQ1IUWX8]H&6SA97B51)RD[^_9ZC;$==FF 8!N2%(N^>NWONA3Q:6??5E\R!
M[NK*^.-!&4+S>CSV><FU\B/;L,')W+I:!7RZQ=@WCE41E>IJG"7)RW&MM!F<
M',6]#^[DR+:ATH8_./)M72MW?\:571T/TL%FXU8ORB ;XY.C1BWX(X??FP\.
M7^,M2J%K-EY;0X[GQX/3]/79OLA'@<^:5[ZW)HED9NU7^;@NC@>).,05YT$0
M%/XM^9RK2H#@QK<UYF!K4A3[ZPWZ58P=L<R4YW-;?=%%*(\'AP,J>*[:*MS:
MU6^\CN= \');^?B75IUL-AU0WOI@Z[4R/*BUZ?ZKNS4//87#Y F%;*V01;\[
M0]'+"Q74R9&S*W(B#319Q%"C-IS31I+R,3B<:NB%D]O+SS=O/U^__Y7>7K^_
MI)LK.K^]O+C^=#0.0!>9<;Y&.NN0LB>0THS>61-*3Y>FX.)[@#'<VOJ6;7P[
MRYY%O.!\1)-T2%F2)<_@3;:Q3B+>Y$F\6: +[?/*^M8Q_7$Z\\&A+OY\!GQ_
M"[X?P??_!R+_&Q+=&/K(3>!ZQHXFB?"2OAK2BHE-8,<%:1,L*=K93Q(42U5)
MW><XT('4PC&CFP+MAI+IYY\.LRQY<]X=7JE<5SK<Q]WTS1Z*,)0D<DOEM&T]
M58RD.D^-<N%>3AR+*5/0%W24!X);6#I3YNN0WBMI.%71J?<VU_%K2,K3:8$*
MUL*YM"*=+N#.B#[!S#_\H,;9I2[8$\8.M<9SWDI\CI>V6FJSV$2ET=?X62"X
MA0H,/6URW<"VJFV+8.V<VH;@:I^3(?3RJBT$"&QE!UNR?#NK= U@L5MQ"!(S
M,#IS/_85HP'.0>QQ>K+]$9U9AU*"*8] P&&D]3'&/<V86H\@Q32888<H<NL:
MZV)D+5:>?=]W&7B1#-7H &G'WUKM8I8AIW)\>2WL^Y@I7RI4O6- Y24FF?^7
MSLU8.2DMY-RCD/!#T27PPEI*@7;3O4=U(+643M]XR4G-G<8N^/T+\U@2DK,+
MN#2HQ-P$1#PO&$90([%D_!XU%4I/@1VW@"3L):,T.W@AZLEHB@6HVLWVHM?"
M^$O\ODID-SU,?BE ZMOKLYO;#OP16+H%2P5LA'J5;8R==0[7HV=(MNT1$,%6
M*.?):'+XHL=;+U#;Q#L'CJ@&M7RG421<W<-0-NVK3/I>=DH_+K)U:I$F+P[+
M=1O9V[ X!VFH?"D"(:]+N(W)>3C*K2EZ]0#'2CW3(8+.G:T!V]73&E2;)0+>
ME%.Q!(P48*Y\2866!C6%ER KJXR( #2VCY<B;9UC* BEJNCLP@>-V&>!"\/>
MKQ5PQ3_#/<;;"L1+J^>V;BHM7FP&%#H"NTM&A$% PA,(I2K(6.0Q^ "C$N3L
MH?3%#9%H36S [8DT%A( ^N':=T/UZ689T;79QANGWI-AB4EK^#NOXD)5LMV-
MGX?I@[RCR45H)]LZ(JE72QO%%.5"9I \QWNM*Z5'.(M6.?#%,K-0V V[^+@3
M6A_BVF!$<OBNB<4':_ ^':'9<1/HXJ$IA*"7:3),0%(GA1AWTN'TH+<GMY7
M[4RG_=W#T8_NWW'O45.S6\2GFX=?&.O=^V:[NWT=GG:/H@?Q[FGY+K:\7&)S
MJ,KD&)#KGFO=1[!-?"+-;,"#*RY+O'#9B0#.Y]:&S8<8V+Z93_X&4$L#!!0
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
M.=@[7(#DS8FI+*<@'^!''T*KYI"H;XW><\L8KJ)53"QX%27S&2U3>ZGS8[)
MDY=$CX=3^(6>UQECU96JT-&6$^+<H('SQYSNXVFX M]D&K4">5M"*''&'^T"
M/YKB-#!9,%6?@A@1R3__'IMM S\HL9-Y5[YWN\EW@( 4N4>GNV:Z UR>+./Q
MK"T_#,4-VND3,JIFFOP+ M-;\JJ\/Y9_:,QXWN[U-?Z3CJ'_8TJNU58S9T-:
MM:5^A2BEB= ;+L; -G)OE12@,_USSH,./^J#U\D*:0.K3.+O508JF &0E/O;
M(FCV]^:HI!Y081@"%R6H"]L(UL+K"+!9(!V8_!8,C^3[^4=>T/S;MVYE* 4,
MT5]SS=M\7]WF_G0?QA-W8B[*->A$8$7,#A]2JWX04^8YY&VAOQ(LCAE=*RQ2
M(:QL%@^F-7%I.GHZ&EBEZ6T%5^5,>)D B>^M]PV$@*$NJ&/QNSE +,86\]:2
MIGZ+EKL"_,L!P)6[!HD(K)/X&L1*/K$=@[9I'-$E(*4]?7!%4,.Q-3.Q,%"/
MS#O7&'<8*)GRJ,%:4$ 8^J8B[55X^=:!@0%7ZQ8.8)?(@O0@C9?</8Y34IS$
MXU4WB-N>=,-L!4%LJA9-?&(P02Q<)\[J6@QV&'\<5DU%BD&^_@I+N_.PM-U!
MB4-U3\/T!Q]B%Q1R4^B<]:]EP?#D]W-!#YV4;)N[B()]U!L%+NU/4+YZNK<8
M+0-B,9! A\K*A+-/F\)6(V+[L$-YPYV!^O58O. 3@O';=>7?\U(<CTQ!7DE=
M4.(Y/[EA^(*@ZDSOJ9[D+=:*J !L. <8 G6X#MR+4V"8J0(S-%V8>>Y43<2N
M;HXW4*373L0):H=>,7)1?=>6^&1[ER9&Q)L."I4CZ_Y,0TAP+'9Z7X3.&J'T
M,VRERJ<BA@_B"T)3Y]J?Z3JE.*W 9*K>GOI;;WTD3GSA-=+Z)CB$)Q3F6R(C
M[IO'*.XDGSMV.) 3Z34;T!.*FZ$UOK5&?(J@:K1T$I.]URQP4 ;J&KI K6X9
M P^H!#;J<&S#L,&3TG[\HI\,"8<#J"L,,FC[X>BIY1SZ T)HC\2YQX$SO%9K
MVU#O %_DT40NWT)0WT4.T%JIBL^\W.+7-QR1>\++"6,:U2_-CO&%TU9[WD.Y
MX2;80=HC^X'%G."<\MUM,I?B<C(?+[][LAS?]R;YM/=:OE1VRS\^T!M;%+Y_
M0]_=[7[?./>O]8_+_8\C;Z7%4*]%H3;8.ADO9@-A_0\._HLS>W[)OS;.F9(O
M=THBM;0 SS?&N/8+*>A^]7G^?U!+ P04    " #PA%-2%SA[G#0#  "T!@
M&0   'AL+W=O<FMS:&5E=',O<VAE970Q-"YX;6RM55%OVS80_BL'K1@20+ D
M6K*MU#;@-"Y2H,4RNUU1#'N@I;-%A!)5DJJ3_?H=*5M-AR4/0U\DWO&^CW>\
MTZ?Y4>E[4R%:>*AE8Q9!96U[%46FJ+#F9J1:;&AGKW3-+9GZ$)E6(R\]J)81
MB^-)5'/1!,NY]]WIY5QU5HH&[S28KJZY?KQ&J8Z+( G.CHTX5-8YHN6\Y0?<
MHOW4WFFRHH&E%#4V1J@&-.X7P2JYNDY=O _X0^#1/%F#JV2GU+TSWI6+('8)
MH<3".@9.KV_X!J5T1)3&UQ-G,!SI@$_79_:WOG:J9<<-OE'RLRAMM0AF 92X
MYYVT&W6\Q5,]F>,KE#3^"<<^EM&)16>LJD]@LFO1]&_^<+J')X!9_ R G0#,
MY]T?Y+.\X98OYUH=0;MH8G,+7ZI'4W*B<4W96DV[@G!VN;U=;=:WO[V_66^V
MO_XR8\GT-:Q___3NXY=Y9(G?147%B>NZYV+/<"4,/JC&5@;638GECP01)39D
MQ\[97;,7&6^P&,$X"8'%+'Z!;SQ4._9\XV?XUE\[81_AS]7.6$T#\=<+G.G
MF7K.]*?<X/_E@H\5PEY)^HA$<P#+=Q)I^BP7TO2C[0H3#:A.0Z'JFB:>AJ>X
MOX(OR/6I)4 7BO4.]7"I]$AR]YC!MN(:#:QJU37V9<L1@VK]=X4/J MA:#<)
MDVD*KR!A:3B>C"'/<[+R29C',[?))F1.4S*G<-?IHN(.I?8_Y L767X)%TD6
MIK.4%E/FK#1D,^>>SA*_&8=Q%E_"NFZE>D0\05O)&V@'YC2&) YS&LN,D@FS
MZ032#&8$36"#- &BL'0G/;9KA#7PC=Q8AM"0'%)B1V&K"B7%]/5WK1.2(]?D
M06LEDCQ9(-Z+A(4Y&U^ZDRXRJI[2] UDKX?WRM?Z%G>Z(_F#)/<=H#X<$2I>
M N]LI;3XF_MKW6M5^V;NE#N.D*70)&6*>FD5Z>&Y3DK*.=@H(WV0TDM=60I'
MPN4Y<8+_>S!&_S7[T1,EJ5$?O%X:PE';>U$9O(,DKWHE^A[>Z_D'K@^B,2!Q
M3]!X-,T"T+U&]H95K=>EG;*D<GY9T6\%M0N@_;U2]FRX X8?U?(?4$L#!!0
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
MK '=;Z4TQXT-</H53?X 4$L#!!0    ( /"$4U(H!LX)80<   X?   9
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
MVCE=^F4N!0H0'\#[A=:N>V !ZT_@Y_\#4$L#!!0    ( /"$4U)OST);U@(
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
MM #OES6.SOT-*1C_WX*W_P502P,$%     @ \(134@;OZ]N'!P  /!0  !D
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
MXT9)N$H3\'VEM1M>R,!X87CR?U!+ P04    " #PA%-2MF!,\JD'  !B%
M&0   'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6S-6&MOVS@6_2N$M[MH 3:6
MJ'<W#9"'VRFP;0(GT_FPV ^T3=O:2J*'I.-D?_V>2UF*FCC9%I@%YHLI6;RO
M<R[O)7F\T^:;72OEV%U=-?;]:.W<YMUX;.=K54M[I#>JP9>E-K5T>#6KL=T8
M)1=>J*[&(@C2<2W+9G1R[/^[,B?'>NNJLE%7AMEM74MS?Z8JO7L_"D?=']-R
MM7;TQ_CD>"-7ZEJY7S=7!F_C7LNBK%5C2]TPHY;O1Z?AN[.8YOL)7TNULX-G
M1I',M/Y&+Y\6[T<!.:0J-7>D06*X5>>JJD@1W/A]KW/4FR3!X7.G_8./';',
MI%7GNOJM7+CU^U$^8@NUE-O*3?7N%[6/)R%]<UU9_\MV[=PX&['YUCI=[X7A
M05TV[2CO]C@,!/+@&0&Q%Q#>[]:0]_)".GER;/2.&9H-;?3@0_72<*YLB)1K
M9_"UA)P[N9A\F$RGDPLVG7R=?/EUPDZ_7+"KR?3#Y?3SZ9?S";L\^\>GCZ<W
MGRZ_7!^/'2R2W'B^UW[6:A?/: \%^ZP;M[9LTBS4XGL%8[C:^RLZ?\_$BQHO
MU/R(12%G(A#!"_JB/O[(ZXN>T3=5MZK9*K8TNF;G\-4@3\"!6[-SC[XR[)^G
M,^O__]<+!N/>8.P-QO\GP/^']D_7IQ\_3B>M G;YH3=SLU;,R5FE+)O14F1V
MC9]%:>5J9=1*^C6BEUAH+2!EXS2;2Z=6VI00<FOI:!72<F(DJN:ZT74Y9TL@
MHXUE<KFD;PZ&&NFV1G$F:[UM'&>N1.JN\-XLV+:9*^-0+MS]T!Y]FDN[9DLX
M9X_8C1>A&1U%4UA<-:5W].%K)V\&7V?W_=_[".[98FM(@KS;*%/J!2OALF5+
M79'!=PR+W'^]5](P1>G*D&RJGB$#NH1C5T8OMG-GO;M6F=MR3M@8V=BE,@8R
M0$FRC49X@) "5S\@I&]AQ,^]T4Y67<CPZEHOW4X:Q2H(-5:U2HR^EY4C6EZQ
M5/! %'@(0QY&"1ZRB(=IS*ZW,SLWY88@L>QO?\E%*/[.HB3@:9SW8V^@=ZR;
M&>8ICX.B'S\39ZJ1X*^?$Z<93\*H'T\W&R.14]53=0+NB:P;?I%FX<U2.!JX
M&Q9F/ _$@_GVM04$014\CT(*DP=1BF?AG\,PY6D:_0![8?%G9"^/>1$$%$K"
MHX#8"X. "SP=ID\4*8\2T8_/TR?"B =IV(\'Z8L"'H5Y/[Y$7\3CK.B& _3A
M2Q"*X7QZ[>@+@XP7(7%69#E2)6F9I-1"-OP >_F?D;TLX6&>4R@Y%TE$T0&?
M.'R./!'P),[Z\86U5X1<I$4_'B(O0NXD(NS'E]=>'J?=<)B\-,F'Y-%K1UZ1
M>SED*U9>'*4^SH2+7%!1WAI?6;LR38VFEO]&UV@+O-Z:AZ9BV5S7&U-: IZ*
M=R>]GV';1EP/PO7$#>$\8E]+X[:RJNX9?CH;NGF+;6E=$D^V W9>E:IQ9'78
MV;=4]LT!*YN--FA7NW4Y7[.-T;?E MHPW8M)9DNTF&4YE\@P"Z,0/!3%$?M-
ML95JE/%.[A4]9\_[\CB"SO$M%H/![ ;Q<H:)2&R+70GU2F4YJ['[+-_Z==/%
M2,T3'/0A.V7J-N AC$P:+(*5JKT9_]ABKQML%-9&J0&W/3OD=@,_#Q"W;\#_
M ;-/>ZW/MI]MMA.@97RR#'*;/+B1=]BK&8"'[MYFJ3WD+2W0A"=!WK;)-*'Z
MT^4XLAFK-DP#]N5P0")&B2T"E@@>HA&%**58"$D0L4_D&"6R;.ZQ1'UYS0+V
M&H]A%+[I3;3K9^ .*AZ6?I&T[3KFN8CQY.5$\.;G&]H?@%":"?19<B.)>)ZF
MWR&4"3B3/8]0GG$A$I:F7&0IPV^28F-1\"S)'H&$:@$H19 BVH3'1?H"2@7*
M:A1ZC(!6%!-]KPLNXCU$/]4U_@"(D@0%-J>]!_9,L:_W#Q"E00+^BV<A2E'
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
M+4VF&F\EU2(,/RE72F CJ>T?T(2>2T+^M'0SF5=<)V^ $M"*Y'B"!4?IQ26
MC.!@*_/5IDN   =]H[VBPEOIN0Y-4T"N,'-_F@;GL2#3BNJATFYKU$9&*:A@
M;8$9%=R0R7FA=MIBW>;^SW#,R5UF0SCY;!%Z*ZX1D^"0P.)#"<W6[ #B H%6
MF;Y]_6K(#0J/P4%'3)_V51J5!C1D(*'E4>\+;2@H>>J=%*<Y'C46&.PL<C6/
M?(;J6Z1NW6-"2"R/S4'!P64R/@);()>9M/M@V1H:0VT48(LE^PN[::-V3H5+
MS8NT*G7@L"^<+<5/J*@2_>,.+<Z+&VF^B?N[:U!&X+]X-AV]$G/@&2U]^NKL
M))? 9V4(YFOC%2J$D-'I')2AL!"SD)FFW-W*[AY@M$"QY=IMLG<H2[8H*Q$*
MA4*0'  B,RB&#NYKQ$*7MO9 ?"0*13IORH6*?FX!UB0X-D'K_+!=>_]["/>4
M\;98QY#C.7RI3-ZD'[>!'D*1'"*SA'G_'0(HJ/O8S0%'D4G(1B)RLF,ZNTV7
MTR65LTA$[D#C&C) ,]-)76[_P+W][5!'"X?*9U<Q7K>E4D^:<!\J:XQL5"Z4
M]WT@(+$4 8()RAKYH*(_(U.2-1JJT[\1%5)YG:66Q9C/&O2[1-OMB3'0SAU%
M>4([]^.>P1J6\C:31'!)!.'KHBZ*(0-M!K:?<X$W<-VU:,J!*$IN4_L_V]WL
M1%/SO@[K'FZ(?Y:+.ZIUV,]$S@\YN$DZ"1)>=J7< %PJF;Z#X&8RV,9%8L)
M+@"#.Y'=B[U;27<T6EX% DE"X_U=]4#=$FX!BWT/%'?XP[!/'J)A30,O9<Y-
M/_IP:ZO4W\BU6\V#;&S8$PIY$1:6<%&O2U/PFJ2<U^!YE AY[9HA%;5(TQ&D
MP_"<@O44_JIZCK0B^DY,LG9;F80B(D;/QPW4;IW"?MTQ;^\L@6#H WN,C8EM
M(5"CCQ28:R*!;)7O=^0M;;'H<!_350^9JE)0T@+*+"6:'5Z2UK7W<0?JT-^7
MH)V) G;.E.8/Z3(2-S;E63^WR04E>B_E'LU2>QV:F$^C?4<J,^VRNJ2*RU2?
MHC/DZUW*3Y:V_3>&[V^U4>)TTISP]%PER4LAG:XB$^HJUA94$F4\SH,JD2_B
M160B;2S)4362Q+JF3<LBX7%2JWG:9!F?,O0;;5*XH3A]J-&,9QVQXIY>RF^<
M9NC+@ NONCX>@Y%A-]T<@/00DS/>T<$1(547,-XH1X)!EQTID/ 2,U6\[TZ:
MD@Q91&+7[*CZ\>']WP[C:W"GQR?W5U07VKW&;Q&::"DG+RV2.[GQ7.T['ME>
M+%&5?@R&H'VZX/UX7%_M$T/527VF#9S94A".>:#-/U(NFD)'"4VZ^_WYSO48
MFCTUQ;1]M1L_V>R;VZ@TD1BF73.G5M-GV@3%U$KN-)NM4"P44Y9G+U^*,C'E
MM($?I<-7Y+BEB("M94X?W__F5L5\KFHZ$PQI;Y%VZ"H>R?EF9QC/%M)V .J&
M]BR'^ ;4? A'#L<@M6+TCH<H$+O0A>+#F-L'WK.)V6C*55L[01\OQ)N3OP]%
MSJC0GOM.6UC0%-3F,#,"AU,+4'/JG_&\<;3OG'S<^^[ QX_T=84@LC8A?H)H
MG[8?<*[C=XMN>/SZ\U&Z)7770BTP=3)Z_7(0:5)S$VS%7S'FV!3:DB]7"FW5
MT0"\7U@;FAM:H/VL=?4[4$L#!!0    ( /"$4U(2<CJ;H@,  )0'   9
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
MGZ8P4%ZVKM;1)FD!L\.N<5B 9MFD1)!-<I?>NV3B8!I7Y(#;M-B\-(N'QPX
M5 M@.'?(">!Y6'>U@'\:I#V 2I:D3=+BEN_2<HZ_)^Z/5=ZN$<II,EDU\%#3
M) [7M*SSQB79JL9C3I.EJ_,*X%-7BVAE UIK!:/6"8*AY<5/\WJZ6@ ,:3OT
M5EF5! 3@<P!(W:7 %CX 8! .54F#P(I*U^H6PAS3GAT>))\<0"B#*9(<#HW>
MWOZX;@HAL79IC1L&0DN 3-QB B\IJ>#_CU[S#N&O5P<[4/O$H_;)3FP\2YL[
M&I#^& 'X[],"=]R'V(\,-1S_F@POWR7TQ^A_?SS_;7@QNKP=\]AXNE^F>)X
MC?8N;0&@^!$$2@(B*@%I5:=$Q#5B0:W(COA^[QI!L.:NJMM]P(?%(+D#MEVL
MDR*'Q[.!0'-_65?9:HKC\'LTS$%R'CX GV[ODJK.YX"X!;#D%@Z@S9VLK'8N
M63#'@V45N&*DFVF1-@V0":/M5.%&?[@ -R4UP%>0E3FL#VDB;UH<G!X&@9:Y
M9=7D+2^D 3RM81V3M/S,2 BSNS6LJ_X,*#=;E1FL_VS;A+0XX@ZP,.0$3>O)
M?0G ^ +K:&%O,AR\M7*[,.?48\[ISN.^0?):N>3&32O@']N8X2.#C'X;77X<
M)3>CLRL08<0$+_$\'(+KFHY22'CLZOL<R12("Z@$%0M> %%S4\W:!X0$\'^@
M+F1Y=;5.BY:X'_+":9TO<9'[J ED '4>;A!>#5_!Z;3[<&XD0426(Z-8+9>
M?LF3__A?KXZ/#]]<GXWIKZ,WB"GR)>I3K4.V[>3'IX"J:9W1'+@3/)8T;Y"I
MRXP'B4(3T+UF@/X3%KD"]L/L;0;3(P+AFD#3@#_A:!<Y[F2I4((UZ(!)6_EE
M(P'!O$FZ0"G)I ?Z$RI7PGX103.B/ICN <#[90D_XABP%L><"HF7V302:WM7
M 3?NFYF87^:00N&L_2'5 4N0Q*K5_([FGH$PJAZ06H'"E\T/#,73-\EY!LA-
M4HG>(<ITB9[) *?4#TAS2$AI.*G=HP"G(:48CBBI)D4^3UFJY64TB1_EG6PG
M&L1('21V&$H?!YE:31]Y%F#[9U9BB W'5N@^@$0AD*0("\!D&*:9K5E.]DP
M&ATS)%0A//ZG=8T';'AD0"%<"2!VL@"5&36AK2MG]&)$V4*8>0GLJBCHA0'"
M)B\! 5BN(2[B%"@/J_#RHLK"*=)SM++\G_P-/+I .Z@!O,7G B*4SF5-\D2Q
M$TD1MNZG PH^2-X30KO&11@%\&"]DA ^+[/\/L]60+3;=MXX4,: U0++Q_/
M(=?$G+,<9YRV1!H.&3 \A<^02J"O;1T7]#)0M?PH1&QWU:K(\%M9(ZJ*=/P@
M7;:-!,J>/6 Z*%4E>WA@LT()TOCS20@*]N3P>=U.AF<0R%XWQWS"<R5\0Z0V
M*9H@!U'7*5L>'+ZI7:&C$7TPAT'T/WKYID%A2%24%J F'I"^O$E;.6EO2()A
M( ^];5!&O$IH=N1WJ"EF:8' !#.TP.WSV,KZQ^-KY>YH6N9=OH=SPC,)"QND
M5J"TB@1]04,11">_.S)M =QM^IEU%N3<$4,6P0U?9CFO-:B?,]AX51--X4&J
M&DE"7NG;(#7^!M*G$$H"G*T*T)P\M61N4<WK= G:@VC2^$:Y(C64/JZ7K":M
M&N0*R"3R,IYEFRQ#]1GU>N3WHH8C)J=H5:79[RM5SDA"@O'1IE\<\IT"!943
M5=\S)&O1H'0'A0C>!KP"O3%OY>#G"/ 2AP6R35> C*SG'21CQ7=+$C^$KR^$
M6=%J;E212#[@PG:R3= YJ^+>J3)0S6;[ ,)]L/*+F>H*^B:AC(<0@5H9.N/O
MI"!!L1>-LK?)4FF5POM(:X S)!NF10E0Y637)6V^8$EAM0B<M#N>US@:I1X%
M^R!9E:001Z_!.9=5Z[$65A!Q//U^^SY@%LO@:(V@'0OC2[.,CQ-UF !KEE!
M;*@)D&;BQ29HS*XNUD@-TRIS S/8"LEQLHYV)1I-^,*SF^6J7B(#(SVLP_P
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
M@SD@:_"(BG-^CU8_6]6D).0E%WV2F(OU)SC]$H3<U+LS^'"#5Z>D\HN!;&"
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
M@6FB)O)7HDMR.ODZ3@VB]5"[U21(^@#HPE>#Y'-9/90(7E$9X"T0DNB3T(F
M_>S9S!9"!!A%DOQ\X43OFV;DS&Q,V++V>S/Q0);"Q.1L0S(*%^.+0*&KJ<]'
M9@]!G-S"LKWA$JV^N0W?W[V T"TFVY@=#E3]F-Y)XN.JW0Q"07U_*$_99=$#
MD4W%J/9IR$KAP#4X'H(\?*7!$Z2'X,WM!$TPJX*/R\>1MQS7YKMB36FB2(O]
M;$!F).R$(K[D)>&#=MT$-@(*2-[<::X3P*U_P_D,>YI0"C!9S)P"# 8E.^4Y
ML7+S15"3BR*1=-\]3A%TV=XNCG!T&.X-.-Q)U6-2 +@AP9E1 'KO!GADJ%^'
M-Z/]M\/QZ%T"K.)Z=#FF3O8:'$TC;2/%W(=D6:22&2U1AL8[@"D03;IC6TT_
M@THC&A_([K;.Z=3XEQ5HHE+&8=5$FHQ_Q'/Y[-8)X$%1K1WU3"%SL*H9H[#_
MN_Z82-O9E&O![.3&*L$&XB+TV"*E_^\Z$G.5P]%../Y251D=.:Z,BV;/@X8X
M)%SJ/9Y'AKVZ>O?I_.*"](>KVU]'-\GYY>WP\I?SMQ>C9#@>CV['B9_;_U&C
MC&I$'W-1VW87>J5PH9&7NS,0\"$1BRI&A>:G'#6P+A>MH24U?D,7'O0E1*'R
MYZ\$ (8SD40M#+DNZ9(0F*81 V6N6Z&6/:C!A"R08"<AHO@<_9@OL%O"QT6:
M-2#!W+>(=[TK48Z9-[WS5";-1TU^A0WPJ^E=6175?&V7C(RH,XP,'K1]\51Q
M^^>P+GH8P\=< C#!2UQXKSVO!M<&6K88J#;"UGC-.$$9S7[Q"]5N#NI938EQ
M][D3!8;K"C'42.$6*5K_Q,<+:_.G0]ZG!:J&HK]J9BK!>0@85B1'#>^-&.BL
M]EE@R.HQ0UPMAUTA*!]]RJF006PL1E8,) FC-9XU6B[YN8-_B_I,M%Q,Q3O1
M.+869SW.ZN/3Q*Z>@6S@56FNFI9]*YU073)5N:U5%_X#$T-[%@5<=5KG$SP/
M/'DJ+^'56>^::<3N@L +UAC"=#.6%QFJNX XL'V?4C(V4>$+22%!'8^YQV/D
MXQ'(>]VZ1-ZLO"K?6:JU"S85DDKNIL Y?4W.7QBL>^+$3+$E^>[M4XM^^Q[*
M.DLJ4AD?-9>0X')$7:8400=F=LXZFAD1L<\'2COO!79:]BU.0E1^#Y'=)J47
M9B:PM+V/V>,B*W]:TNA,00'6Z;E"6RLSW^(;,XR_BI>PZ>*K5<.NHT3'!U&
MM9XC3>[62_0=<:T]UZ6"HC+%W";8*/:'P#P54@!7;!G*Z5'\W&\][O'.>"SE
M9JXT4M0<N,)* UH(K1B^#2?;$/4(W7-:W.9@G/FV;1BL/</^D_2R%M]J3;LV
MB6]HR[Z$AVL!.L?'?2S[&:+W'691S4TF.CK?H73UV_F[_:/7G&#)*D>T4M,"
M0#RGJ7@J&FZNUL7 8</Q5=#B@M&V98%QO6DF*D!+>8#(Q78P\(@(J= (<S';
MJ&E$EF?T1N!\X]8MDZ.867<@RD76>6;>VL;;$2B>(C'H_S(*\G=B&'@&F^"+
M]03)[Y)3PVN+-C8I,MF@A)4VU#J#2E),IDKG3(U6QNJ/]@((&A0[6>;I="UE
M\J(=Z6J]GSJ<-5=X,-*0R6'9$)T9QB91L\^Y'2#Q7SRQO(X:A4>,79PZFC[0
MV0<0/W,%U'TX\0KVP]T-58_SH8(-T'>!@9HPY>@8J*!ASKGNFR 8[(2!I*L1
M**SG3I1X"QU2W3?V3:&=;]A.A$FJ#\."_?XHN_;HY#@DO)(^=_3J;P.B5&)&
M_NFT/S]8DF$8\X(XLKIC6JPQWT*I3V##=]]L2,Z#Y!U'3GQB2IS,&], W240
M%EABBDD^GSL:X>OU3P[/!L^XF8%FIV*'VM,:NWKV79F9<LB,^]G8H[55>0T,
M  *4C"S/9+E@HM-J8<!<2[*D2'36O%J3Z>G=$,0M\XH"OI%#ZL#?CJ.B*99&
M?6)("O-9"1+'7X2K6Z-2PJ@XZH,&8S P?',/5MVUFZ=9C2GQ+J-1C2*@3B&5
MV398RUEE$D\R:^(K*#2NEI=W[, TQQ+*@/.^IA>>TVA-9K5J<8M1=4)5A"X+
M*1:7@8&N17MJNB)"L=-2SWX@\0YVL')L5.YQ0N](%[8XFV^2DDZPUV!7@PV7
M(]0598BAQP041S(#!UR.$&I(-&&SJP;SJLRA8YL!Y,8J_GS;"@0I\O:0DE75
M6AR!FC.[1>WM<13G.4A&.<&TR5NQ:WA.PQ?0]8@PG*THT=>[GGTCCU[]JE>T
M:>^Z4JLU95T]C.>6R"[$N")6TT2\AIB7;P OKM]$G#.48N <I\:\P,R8K_$B
M<4:,J7XVYOW!U[F>8A_7<?!Q'>\.)@10P(8N,$?]@IS/.]Q;CXSXX7IX?H,A
M,4Q.N+BZ_&7_XORWT3OU;'U2F$GQWD;_3LT;F:73/FO7)*WVF[W:2,S&_$(X
MSI,UY>,7[&AG2Y'9#%4145UUX[*MC@@P0HGNX[5US"=L/X.*6M380Y-R:*B0
MUKM]"=A+LL=,[XE*ASA/Q>6SU;)&I1/[S*V6FO0=S.).4+TTAIY0BBD@[[CH
MV0-KKAO@<;UYOFMYC36X<VN-;$R[V\0V-<S&-IZLC5?BJ]?1X^W0+0WMX0"0
M,)!(F5(^]F Z!7E&H"(YKO.5P*MDDC "8Y"QWGJND;@LV+W9\'*HDP\UX:2%
M --"K,8R/!=BFMH 9I<_A#>%6AQB2N=:3:ZKDWNAPI[#1LWN-=?5(%]?Y+$Q
MN:(;,%)NS):?/7VT1#;(]C%^O(M/AMN,CY[OOD=5<_I\KVN]^*"713XRV-7X
M5BX:_G#]\79TDXROWM]^&MZ,Z&HFW\\N9 MDZ"^NF(/QZ?NJ+A_V\A6EWCQ
MN<Q-AAGJDM+-U21T3%S'Z;D0 5":0I%!RV$6E/L4>H^[,(RWKZ[WHE4XF@;C
M![YY'Y&"V,[^"H?9C/I0@<X4[ %2]AX<]HV22V E6W%;AC37=6YFS#]TV@6&
MNUAAJ=^=="L"7Y@O*.D:=>*MNS;N:;2A)3$SFI WSC?%>$AC;,$7U#X.]J%-
MQ]#<CMB'7)GA]R?K?9U)NDRVW.];"C&\=WMW0_G.I7\AE]GXDK2-B21F#4*<
M;I#,4&^DJY0[6]@)4V("G6,Z.CCVIY*7X<"_.S1U%GEI+F;.C?N+HEB,D!N]
M!'VRYV.5>3:S:5N;W4^FEB'N42FWEJ"BMVIV4OE?X6WA(O6CW9>?GX54R6N-
M(Y[9++Y>%O?(F%=TVSUJ@=<?;\Y^'8Y'=*WZ^;O1#5^K;F:U4M_DP/O2$1-%
M#+5;X8( (QY3+U',.YSB*2E5'@G(@]EWA^S&FW%PE:\0$(.B4^*QJ4),']EE
M9S?HP4[KDAIX=)M,J;;+AB+W8-B) .&Z\:/=EX2_QV7_ILM^[X.,YR4VCZ*%
M]J+ (Z."&9#\-KSX2%G*[\\OAY=GY\.+Y/QR?'OS\4.XA-QW*HIN[.ZI.['?
M2G4S5C+XV\>C%-/-3L>J +628Q>XBCTXD_?D,]?T.G+3LS4/L.E&6H(]JK$1
M8JC(*#AYB%4H._^DJCY'*-Q3$N87MI)+"3'SH2;7"?*#ML,FT3.UQNK=C,I2
M^=)T8YR><A'.T1M-6+KQR[V0Y9[1<C5AR19MH*6PHD3;'<T#U'_WW=&)%:34
MZD[O?4_H*A;L$[UD/]8$>T4/D@68\-S_F[Y0GY,#<99./Y/..=4+XOG.23VA
MC"&"MK(64<)RCGQ<%3Z\(N9,R9 97XA09'*L/!OEJLMX7 AS']TU#\\N\*#0
M!!2ISYZJ+F(U.S!+G2EP5HQDV:JVC(B03.&T@61->,J HE.E<D%I!N?G"=^"
ML381-SH(T&2E*/N/5<4=<?C.$'6(F8@=]9DG12K8T*'9J#K0T!6M70?-ZKES
MBC<8TC:J6VG"G5>60QO"CH:2/"'U$]C?M@CNC&L\=A;7/XK&*?52JE>T."6_
M4!.GXZ$]%>LKKUZ?#@X/#T,BBMWDMG89''KBN(&Z#M*RDP$>ERN2#VG["CM]
MT]:V?%+@YI$^% -Q+J$G5SJGDHOYW#XHZQPOVC%K)].9(R2:TDBN67E',A9C
ML:>9OQ7RKJW6P!8SH#^$T*F*/>_,OY'Q3 FPC9R2U/PO\M6BV4!8)@H>AWN>
M?*,BJ:IC-PR";9.)[P,K-2U*S+EP;A:P_)8\A+!$R5[DU#R?/,;1#FQY8^">
MW#!2_ K3D.IQ#2APP7D' [[WXIYQF5P!PQ5:"F#,EXELBWW+J=QK1)WAY\"0
M_"U'S;+ZC+T:<1):*=Z401X!-^?6ZNB&H:D!(]Z^O[T9)!<79P.ZGJNBEE,/
M:-=@U##/<LP@!6B])7?8&:O6R75:MR4V1?@MN3BXCI"E27TK4\Y^\>GXWQT=
M1O"D"I*J[(?:T:L8:GZ=DK;1.0TS4&[[6H6<;.)\DBIO^N+::"%ACQCHY$YT
M-;9VC?/_RUE!-1O!6N.UF#M7C(RPP]<NS7+3LI9-T"!D.,)G=\8)4#DS<=H
M&9!DU 1'#;.'#$X-VY88=^\@]&.5C7>E!$>PQ:L7AK3\$"-!C=YX'>M=VT;.
M9W%DS=P7\A6A0A*"Z K6_%D#_33#)@+.YZ9OLP0B67Y9?<VT<?QQHZI5LWZT
MWT*(_8=X1M,3S@@1K#Y8A7Y^FY&-VSN27A8;+/_;)I5##5APV>UFBQWAO,O*
M.0U6SNEC9B[&[^N0U,/Z;7*3-Y][[9M'QKNZ/ ,CALU9=N?=C-Z=WR8WY^/_
M-%:4L13XQ'RL&34_B5%R$#"^E:^[7!%<-2S7N]7\/3E\']WTF^PI2:5E#5P=
M3.(QB94JUNZXR8'G),P<MD[9[P0,,4%9D)XUHPGP3+=699+J >TM0]KZA;F/
M9IQ1T7]HNS*+()^WJV /&E>S7I$AJ2=YR>4.4MOYF#J8[=@V)O^<'CX_.%6Y
M<B Q+PJA:NS+Y'9ZGX4<,#69D&@-:_C]6Z*.O3MP1)KID/\SM!H*2IEF%F;A
M-IX&'9:XJ[G3BQE@TBRG/BFFL89O]T<U9K^:9IS"X"/%U+O!N -@0/(H0VQ@
M9-]F2^?U-Q#'UG25O]@]2!K!T#6:/07C?87B?;V"0M/?/]4MZ&O;!.D9_;LT
M"DH>[1,4\EVTF\'F[8B!5'PNQP"E<4&QUTIR4Z*#^)?U&AK\JYL-[9)[H<_
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
M!^3Y?0!\)\_?%P I\XTH"L2J'-U6AE5+ <ZBJ=;<:'0M=%9(O58<_36=:Z,
M1G\?4!OT:@.G-MBC]JDA 9(+E*U )]=(5"AC2OT0U1*Q4JXK8V>7K7V[8G]0
MA:7SF:Y9QB]&P%?-U3<^FLQ6?*C0V.Y^I0A8[]:8C40_.%,:<9M'!%G@Y9RK
M/A.(0828A@T%\%R?0;X-5[42&D)9UXH)S0HTDP:^EZQ@5>:6@RY"QSZ!(D(2
M] ;%?HK#T(,6"3")W%#HXQ@FGQ.5?5T+!48H7C #?R.=C?5:@6>@#X1^%)F2
MCY K%$?8)RGZ]9>$$OI[USTH3((TU<QH86N'1L3#7N+U4MKN'D=2E- 0IT':
M.9$$'B8D1H^=A1 7NRW_!P@.%0YP-E!_]6$V5(Y."(Z2]&VOO.OOUDYM\!(:
M8!IMA3'Q$QS0!!W ;MAC-SP6NTVHQ#-M6$,;2Z;.)99EZW+=MDNIC/C)K&.[
M$'U0\6Y$/_P/$U &R17:N A:##7P=60P0Y"?-2!WR7VOI-:[6/,R&,""*U?!
M8;2S9# +2?$IQ1&(M"V"K?!IAT<M%V9C244CBFD2]?^98CE'%2M! FQ/O;#[
M7;%: +_$S^'VG'^#D[>V* -OK:L WC A*,")%Z [#GC4SS0(L>?'[3>BOH-,
M1"+LA01LVQ/%$YJ";3Y@\H3Z,29^_+:E^JN08%3!30/\A<)!$N=YG."4!(>
M&?7 C(X%)H,\9HUUMC>@TRND[,+A03W[*^M65&JNA,SU(9H(W=Z&7,[:>OR,
M06./W;,=Q?;%2 _*S^X2 J*&J9H.C3IVW;VL?NN\L09OH;JOGL]EI2M.;P:M
MKNR]GIONDWPD7TC4GD90X "<D3>DT& RC;$/X=I/JKA=2J /0'P][GLX(#M)
M1TB[)L5^%+T:C3']SY0,.ZTX@.+=$+0;HVFTAZQIMP(2$;T8(V"4=XA:<4^M
M^%AJ<6U$V12!JEH#R;=0S[_#>T'S7:0ZJ&$WJ6Z.T?7Z[-XJ.*+*BG5N^91M
MH<L>["M1PPKV$A\8F4'"[4F2'97(T]T)!V+72B[!*U<-W@2G(=SEB\+Z /<!
M-.?<.F/-A&T+)4M7"(X*=%,D0 34#'=*$<!]& !JB>U1%'IP??)MVP>*X#"B
MMAW8TI%:Q'LT1(#R")9""8.'W0(N;G"=\ %^H:-5@+V4[ 31>/#P@+@NW?,*
MSD9[(C9OD'ZT?\%-FX?+\_+F^?>1J:6 FU;!%[#5.XWA*J":)U73,;)VSYBY
M-)!$UUS!*Y0KNP#F%U*:KF,5]._:R;]02P,$%     @ \(134K9APTEX @
M,@4  !D   !X;"]W;W)K<VAE971S+W-H965T,S N>&UL?51=;]HP%/TK5]$>
M-BEJ/D@I18 $M-.06JTJ[?8P[<%)+L2J8S/;:;I_OVL'4B857N*O>\ZY]\;'
MDU;I%U,A6GBKA333H+)V-XXB4U18,W.A=BCI9*-TS2PM]38R.XVL]*!:1&D<
M#Z.:<1G,)G[O0<\FJK&"2WS08)JZ9OKO H5JIT$2'#8>^;:R;B.:379LBVNT
MS[L'3:NH9REYC=)P)4'C9AK,D_$B<_$^X ?'UAS-P562*_7B%JMR&L0N(118
M6,? :'C%)0KAB"B-/WO.H)=TP./Y@?VKKYUJR9G!I1(_>6FK:3 *H,0-:X1]
M5.TWW-=SZ?@*)8S_0MO%9G$ 16.LJO=@RJ#FLAO9V[X/1X#1*4"Z!Z0^[T[(
M9WG#+)M-M&I!NVAB<Q-?JD=3<ERZG[*VFDXYX>QLOEP^/M_>P-UJOEC=K9Y6
MMVOX_,1R@>;+)+*DX.*B8L^VZ-C2$VQ)"O=*VLK K2RQ_)\@HM3Z_-)#?HOT
M+.,-%A<P2$)(XS0^PS?HZQUXOL&I>HM"-UC"'6<Y%]QR-"$L&ZU16O@USXW5
M=%%^GU'*>J7,*V4GE-;=-0>UH:O7B8IWT8]Z>Y;/N7-L=JS :4#V,ZA?,>C+
M.6*&0I%EC'7"MD+8*$'.XW(+S *U$^L<-;5T[%M*G^0:#C0M^9#ZD2O9&&)B
MLB2VNN;&>=# )Q@.PE&2T22[#I-T"-])07]4'R3787I%],,PB4<$& W">.20
M5Y=A.LC@HPY'1_>X1KWU;G4%-=)V5[K?[1^$>>>#]_#N-;EG>LLI98$;@L87
M5Y<!Z,ZAW<*JG7=%KBQYS$\K>M10NP ZWRAE#PLGT#^3LW]02P,$%     @
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
M2QVU4R#Y5BE[))R#_C<Q^P-02P,$%     @ \(134@'V&;X,!@  $0\  !D
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
M$Q!*.476 &_W >BV 6LGMEZZIF=<6VRAW'"./:O41(#[T[JVCQ-2T'?!)_\
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
M]3Q#E\/H^.8^#. [)BE-!2V6%.I?C1,'Y##4AHT6O1TD.Z&I'^RRIN\ 2N-
MYZ40^K0Q!.<OR^(_4$L#!!0    ( /"$4U(7-ZUWLP,  '$'   9    >&PO
M=V]R:W-H965T<R]S:&5E=#,Y+GAM;(55;6_C-@S^*X1Q'^X (99L^:U( J1O
M6X9KKDM[&X9A'Q1;28RSK9PD-[U_/TIV<AW0=E],ZH4/'U(D/3TJ_<WLI;3P
MW#:=F05[:P\786C*O6R%F:B#[/!DJW0K+"[U+C0'+47EC=HFC"A-PU;473"?
M^KU[/9^JWC9U)^\UF+YMA?YQ*1MUG 4L.&VLZ]W>NHUP/CV(G7R0]NOA7N,J
M/*-4=2L[4ZL.M-S.@@6[N.3NOK_P1RV/YH4.+I*-4M_<8EG- NH(R4:6UB$(
M%$_R2C:- T(:WT?,X.S2&;[43^BW/G:,92.,O%+-GW5E][,@#Z"26]$W=JV.
MO\HQGL3AE:HQ_@O'X6[" RA[8U4[&B.#MNX&*9['/+PPR.D;!M%H$'G>@R//
M\EI8,9]J=03M;B.:4WRHWAK)U9U[E >K\;1&.SO__>MB_7BS_OP7W"Y7B]75
M<O$9EJO;+^N[Q>/RRPH^]IWHJ]K*ZA-\?!2;1II/T]"B9V<?EJ.7R\%+](87
M%L&=ZNS>P$U7R>J_ "%2/O..3KPOHW<1KV4Y@9@1B&A$W\&+SWF(/5[\5AYZ
MH:W4S0^XK3O1E;5H8-D-1>^JY[HV9:-,KR7\O=@8J[&<_GG'+S_[Y=XO?\/O
M W99U3<2U!:^GSELSQSJGQQ>2_N[X*ZA+\Q!E'(68,<:J9]D,'_<2]BJ!KNQ
M[G9@W9-"B8^##6Q@:!=9O<X MEJU<*X(,%98B1UJC:-?=Z5J';8&*<K]*1QW
MY!X)1%>APHH+&),]5L-PZDY@?%5XD >+"H7?^DXZ>2>T/_C?"VOY)+M>&O@
M41Z3*$^\EI",IT[+&*$%\UI*$NZU/"=YG/F]A'!*1XU%W&D\(S1-X1>MC(&#
M5MO: HMSDJ8%,!Z3A*+$2HQH#"PJ".JX'Q&$P'U*,I;A?D;RE )C*:$\Q\KR
MJ=I(3)8\)<Z*9^3-<\*Q77A!BC@%SDC.&,2<Y'D,2"4K*'!*DB2".,6;!<0)
MH5D&*QS@(U#",48.<8'A<TABDA>1LTT2M$U/$#$*I%T4!49+8F1U(W2'-8%1
MXJM5==/[-]X+I/@!V"0J4-!)P?TJIEZP=!")%SYW=)(/ A/TX*P-] :1Z@[K
MK#WTUM7="1X#+*+$B93Z<#GS@G'N2&8N!Q3CH"Z<G,5.)/BHK[5>^&(,ME+O
M_+ WZ+3O[# 1S[OG_\EB&*,_KP\_(RRGG>N'1F[1E$ZR)  ]#/AA8=7!#]6-
MLCBBO;K'?Z+4[@*>;Y6RIX5S</[+SO\%4$L#!!0    ( /"$4U(@AO:FH D
M ,@T   9    >&PO=V]R:W-H965T<R]S:&5E=#0P+GAM;*V;;V_;.!+&OPH1
MW $ID-;6?ZE( CA.VS70M$'<[.%>*A)C$Y5$+T7;S6(__ TEQ[0C>FCWM"@V
MMD4^' [)WXPHZG+-Q<]Z3JDDO\JBJJ_.YE(N/@X&=3:G95I_X M:P95G+LI4
MPE<Q&]0+0=.\J506 W<X# =ERJJSZ\OFMWMQ?<F7LF 5O1>D7I9E*EYN:,'7
M5V?.V>L/#VPVE^J'P?7E(IW1*96/BWL!WP9;E9R5M*H9KXB@SU=G(^?CI\17
M%9H2?S*ZKG<^$]65)\Y_JB^3_.ILJ"RB!<VDDDCASXJ.:5$H);#CKXWHV;9-
M57'W\ZOZYZ;ST)FGM*9C7OR'Y7)^=1:?D9P^I\M"/O#U'W33H4#I9;RHF_^3
M=5LV@L+9LI:\W%0&"TI6M7_37QM'[%3PH@,5W$T%]TT%USE0P=M4\(ZMX&\J
M^,=6"#85FJX/VKXWCKM-97I]*?B:"%4:U-2'QOM-;? 7J]1$F4H!5QG4D]?3
MQ[N[T<-_R??/9#KY\FWR>3(>??M!1N/Q]\=O/R;?OI#[[U\GX\FG*7E/1GG.
MU/"F!9E4[215@WU^2V7*BOK=Y4""24IXD&V:OVF;=P\T[[CDCE=R7I-/54[S
M?8$!]&7;(?>U0S<NJGA+LP_$<RZ(.W2'C]-;<OZO=_7RJ68Y@X50SU-!:X.=
MXZ-5G62C:E"Y/5XE/JSRZ7B5R*BRYSAO.Q.\1M8[(#O*,KZL)*MFY)X7+&-O
M_;2GZF]5_4;5/Z#Z0+.E$$I4T!6MEI0LJ,AH)8%"A#\3R27,IM=KYYN+QIF$
M-Q1Y'X;#?R,6!UN+ U1HG-9SDE8Y8=6*UA*@*$T3YJ95"1H5A>/5=13$P5#]
M=SE8&0P(MP:$%I>M>+%2+E-7E),R06'AF8P(.T;HQMMYC978,R_:FA>AYGU;
MED]4*+/6<UX4+^_YNJ(YV:XQF#?D'_WUQ61VVT*X8Y3CF*V*MU;%J%6;V5O#
M5,HH6Z5/!;T@%34Z+>ZXQ!]ZT?[(M<Z+.W9Z28B-<;(U-SG=W+2 L)U6&27
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
M]VG8?H,:3TF?>$HTGA*<):<<>4ZZZ=>AP[B:/PD.C:][K9+GC1LOR+):JL,
M3UR IK(O2Q=P41I/-6\:V3]8;'Z6/-AY8Z.D8M:\*J,V%<&[[;L.VU^WK^.,
MFI=0WOQ^XWR\;5^JT3+M.SYWJ9BQJB8%?0;)X0>5X8GVM9GVB^2+YKV0)RXE
M+YN/<YKF5*@"</V9<_GZ136P?7GI^G]02P,$%     @ \(134M]^5V@K P
MCP@  !D   !X;"]W;W)K<VAE971S+W-H965T-#$N>&ULC591;]HP$/XKIV@/
MF[0V)"1AG0 )PKHAK2TJ[:8]FL2 -\=FMH'UW^_LI"DE ?4%;.>^S_?=7>[2
MWTOU1Z\I-?"OX$(/O+4QF\^^K[,U+8B^E!LJ\,E2JH(8W*J5KS>*DMR!"NZ'
MG4[B%X0);]AW9S,U[,NMX4S0F0*]+0JBGL:4R_W "[SG@WNV6AM[X _[&[*B
M<VH>-S.%.[]FR5E!A692@*++@3<*/D]ZUMX9_&!TKP_68)4LI/QC-]-\X'6L
M0Y33S%@&@G\[FE+.+1&Z\;?B].HK+?!P_<Q^[;2CE@71-)7\)\O->N!]\B"G
M2[+EYE[NO]%*3VSY,LFU^X5]9=OQ(-MJ(XL*C!X43)3_Y%\5AP- D)P A!4@
M/ 9$)P#="M!]*R"J )&+3"G%Q6%"#!GVE=R#LM;(9A<NF Z-\IFP:9\;A4\9
MXLQP_GAS,[K_!7?7,)]^O9U>3]/1[0.,TO3N\?9A>OL59G??I^GTRQPN8,2Q
M2HC(J 8L.,@4S9D!+K4&);DMPCU1.;R?4$,8UQ\0\CB?P/MW'^ =, $/:[G5
M1.2Z[QOTW7K@9Y6?X]+/\(2?00@W4IBUAB\BI_EK A]%U\K#9^7C\"SCA&:7
MT T^0M@).RT.I6^&!U<M\,G;X9_.J.G6>>PZONX)OE&6R:TP&NYI1MF.+#C]
M^)(OEZZT3-=W3->9"Z/ZPLA=&)VX<$RX8R8&%G3%A&!B!7()3Y2HMO26;+%C
ML[UH-XQ[752^.PQYTRA*HMYKHTD+4Q2^&+U2$]=JXK-J9DKNF&UE967;DL8B
MQU(%3;A=Y;_Q7<1VAQ&^P&95!5O5P6Z37%Z9'#C:C8,C-6G3*$BZR9'DIM%%
MG%RU2TYJR<E9R=@IJ^:K;=YJ33@]=@S?4_X$>\6,H0(?+]OT)0VO.D?BFA87
M<10?B6LQ"H.@75RO%M=[:W523.*9NNPUJNDJC(]<3)M&S>*=-(U>%6^IPS]H
MU055*S?R-+C8E[VK/JVGZL@-DZ/S,4[;<CB^T)2C^H8H?!\U<+I$RLYE#UU2
MY?@K-T9NW$!82(/CQ2W7^,5 E37 YTLIS?/&7E!_@PS_ U!+ P04    " #P
MA%-2H!$IZ9H#  !.#@  &0   'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6RM
M5]%NVC 4_14KVL,F;4T<0H )D"BL7:6M8Z/=GDUBB#<G9K93VK^?G;A)&,'-
M)EZ*[?B<>WSO[8DSWC/^2R082_"8TDQ,G$3*W7O7%5&"4R0NV YGZLF&\11)
M->5;5^PX1G$!2JGK>U[HIHADSG1<K"WY=,QR24F&EQR(/$T1?[K$E.TG#G2>
M%[Z1;2+U@CL=[] 6K["\WRVYFKD52TQ2G G",L#Q9N+,X/MKOP 4.[X3O!>-
M,=!'63/V2T]NXHGC:468XDAJ"J1^'O <4ZJ9E([?AM2I8FI@<_S,?E4<7AUF
MC02>,_J#Q#*9.$,'Q'B#<BJ_L?U'; [4UWP1HZ+X"_;EWB!P0)0+R5(#5@I2
MDI6_Z-$DH@& IP"^ ?A= 3T#Z'4%! 80= 7T#:#?%1 :0-@5,#" 05&L,KM%
M:19(HNF8LSW@>K=BTX.BO@5:581DNA57DJNG1.'D=#;_>G^SNKF[^7*[ N_
M+>(<Z>8 KQ=8(D+?J,7[U0*\?O5F[$H54,/<R)!?EN3^"?(OD;P />\M\#TX
M:H'/[? KO+X _O D?-$![L&3\ ]V^ )'2GP!][T6^%5G>&OTZ^[PX2'<526N
MZNQ7=?8+OMX)OLM<J!4AP"SZG1-!M ]8:'L5;:^@#4[0+M&3\B4)E">"B&62
M9%L]54-!8JQ;Z>\P9>I+UG[!JMWR8=H/X<CS5*(?FCD^WO?7CFO;CH,C!=61
M NN1YO]PC)(I?#EXOPK>?R%XSF7"<H'!'8Z2C%&V)5B\!9]D;"E76-&'Y^R"
M044[L*M&(@&2J?>*8N48K$V8-L<8'-7+]P+/:Y;^0,.PTC"T:IC%/Y5;ZF84
MZA5)D<2QED0RB;(M65/<IN;#\*B <& 1,ZK$C/Y'S):Q>$\H;5,R.E+R#H;#
MT4DIT*L=WK.*^4PBSI;JG6^I-&R\+^ Y6PC6!@7]<S71W% UNPB.AKZE<K!V
M-&BWM#LF$06[G$>)NN* '2<1[JRK=U1%[=\V7;4M0;LOW:I[::1S9(3$K0*"
MEG\O6_C:F*#=F?[7Z0WMH=7;%-5>!D-[7S_-R0.);,U7&Q@<G+6K:U>"=EOZ
MAZY>&*IFJGHV-X*U'4&['U46 &99#%Y.G%^;B^^=,W%^[3,^M%MHS5=9Z :W
MNOB5H3JP ]B6.+=Q4=9?6I\1WY), (HW"NE=#!0%+S]>RHEDN^+NO&92W<2+
M8:(^^##7&]3S#6/R>:*OX]4GY/0/4$L#!!0    ( /"$4U)670,+<00  (X4
M   9    >&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;+58:V_B.!3]*Q::#ZTT
MT\1V$I(11>J#T8XT[;)][&H_NL2 -4F<L9W2CO;'K_-H##0XS"[P ?*X]^3<
M<YV#[=&*B^]R2:D"+VF2R?/!4JG\L^/(V9*F1)[QG&;ZSIR+E"A]*A:.S 4E
M<964)@YRW<!)"<L&XU%U;2K&(UZHA&5T*H LTI2(UTN:\-7Y  [>+MRQQ5*5
M%YSQ*"<+>D_58SX5^LQI46*6TDPRG@%!Y^>#"_CY"OME0A7Q)Z,KN78,RE*>
M./]>GGR-SP=NR8@F=*9*"*)_GND539(22?/XT8 .VF>6B>O';^A?JN)U,4]$
MTBN>_,5BM3P?A ,0TSDI$G7'5[_1IJ"*X(PGLOH&JR;6'8!9(15/FV3-(&59
M_4M>&B'6$F"P(P$U"6@[P=N1@)L$7!5:,ZO*NB:*C$>"KX HHS5:>5!I4V7K
M:EA6MO%>"7V7Z3PUGM[]/IW</?P-+FZOP>2/QZ_3F\GMPT=P.WD G\!]W5S
MYV J]- 1ZA60+ :3'P7+=3.5#M1#[>2:*L*24YWQ>'\-3CZ<@@^ 9>!AR0NI
MX^7(49IK^41GUO"ZK'FA';P@ C<\4TL))EE,XTT 1Q?95HK>*KU$5L1K.CL#
M&'X$R$5N!Z&KO=-A9*&#6^%QA8=W"=_H^1%,$Y*I35DM^%Z+[U7X7@]^!4Q-
MOQ:"R\Y^U'!^!5>^_,]C[/H1]$;.\[I*[\-0Z.E/&[;!UF_9^E:V%[-9D18)
M4336+Z$VI!DC]6NNV9.4"\5^5A>ZF-?0P1JE3Q /(^AN4>^*@\@/<3?WH.4>
M_">E,ZJZV ;O6, @=-UMG3O"AC ,8#?78<MU:.7Z37.T#*ZPA0F/,GBC%C\Z
M[."-WJL5!C[>TK0O:H,K=(V%NE:VEP5+8I8M*K8)U7\J2Y[$@*6YX,^T9"XM
MFL UJX9'41TB\P1T6-T;O'4[@-YPB*(MY9NX#>GQT//"'=H;%X7X_VH/_@$W
M+&-ID=HT,KX*O>-TP7@AM)OAHZ3S(@'?]/Q&@I-72H0\[13?#N.#*M5&R5@<
MM'O<GC*3ESZ9C5'!X7%D-AX&P\/(;(?!4;_.QO>@W?BN>)H7B@KS\E6%YX68
M+;7H,9!\KE9$4-N$R!@7<H^B,3*6A>!A#:7!VS 4-_2'<,M0FKAU0XDB#_O=
M?H*, R*[ ^[=@+U<!1D?0\>9#B+C6\@^(=QWN/? X-[1CHS1(;M#_9+8O=Z"
MC)NAX#AB&_="]GG6WF+;8?HM'!F[0W:?^E*(C*E"BUF6.V<OY;$5VK@6BHZB
M)S9.A>U3K%_VD09O<SD3!,&6C31AZS:"0M\-NFT$&]_#=M_;M_\],/W]Q\;9
ML-W9'@3)9*Y74O7"BN[3G[7%[''L"QO[P@=>S^*.E6KD;_?_?9#GHAW=-[Z&
M#S.!ZX&Q=-]9V_%)J5A4&V$2S'B1J7KSI[W:;K9=5%M,C@FO=^INB%BP3.I9
MW5RGNF=#34K4FU_UB>)YM7_TQ)7B:76XI"2FH@S0]^><J[>3\@'M%N3X7U!+
M P04    " #PA%-2Z")8::,"  !_!@  &0   'AL+W=O<FMS:&5E=',O<VAE
M970T-"YX;6R-55U/VS 4_2M6Q -(+)\M*ZB-U)).XZ&0%=@T37MP$[>Q<.Q@
M.Q3^_:Z=-"NEK7AI_7'/\3GWVC?#M9!/JB!$H]>2<35R"JVK*\]364%*K%Q1
M$0X[2R%+K&$J5YZJ),&Y!97,"WW_PBLQY4X\M&NIC(>BUHQRDDJDZK+$\FU"
MF%B/G,#9+,SIJM!FP8N'%5Z1>Z(?JU3"S.M8<EH2KJC@2)+ER!D'5TG?Q-N
MGY2LU=88&2<+(9[,Y"8?.;X11!C)M&' \/="K@ECA@AD/+><3G>D 6Z/-^S?
MK'?PLL"*7 OVB^:Z&#D#!^5DB6NFYV+]G;1^K,!,,&5_T;J-]1V4U4J+L@6#
M@I+RYA^_MGG8 @07!P!A"PAW ;T#@*@%1)\%]%I SV:FL6+SD&"-XZ$4:R1-
M-+"9@4VF18-]RDW9[[6$70HX':?SNW0Z?_B-QK<)FOYXO$EGT]N'<W0[?4!?
MT#C/J2D/9NB&-W?,%.LT(1I3=@81C_<).CTY0R>(<C2CC,&^&GH:I)D#O*R5
M,6EDA =D!"&:":X+A:8\)_E[ @\\=<;"C;%)>)0Q(9F+HN <A7[H[Q%T_6EX
M<+D'GGP>/CCB)NK*%%F^Z%"9)#QTJ=_.4<HPUPCS'$V?:UK!"]3HSWBAM(0G
M]/?(4;WNJ)X]JG=0.O2/C#:5)J_07Q395]"&96!93'-YB<.^VQ]Z+]M)WA,4
MN;WW0<F>H, -NZ!W+OJ=B_Y1%RE^LZF!2XLRN)):UDVCT<*8,OE;U)3EE*_V
MF>M_D'3I7NYX^Q@3^NY@1[:W]31+(E>VQ2F05'/=7.9NM>NB8]L\=M8GT%V;
M9OB?IFG-,RQ7E"O$R!(H??<K")--NVLF6E2V 2R$AG9BAP5\(8@T ;"_%$)O
M)N: [IL3_P-02P,$%     @ \(134KOI?HB$!   YA0  !D   !X;"]W;W)K
M<VAE971S+W-H965T-#4N>&ULK9AM;]HZ&(;_BH7V89.V)K8#A(HB4>AI*_5-
MA9U]=A-#<I;$S#:ED_;CCYVD,2_!T(4O+4G\W+Z?V\D5<'_%^$\142K!6YID
MXJ(52;DX=QP11#0EXHPM:*:NS!A/B52'?.Z(!:<DS(O2Q$&NVW%2$F>M03\_
M]\0'?;:429S1)P[$,DT)_WU)$[:Z:,'6^XGG>!Y)?<(9]!=D3B=4?E\\<77D
M5"IAG-),Q"P#G,XN6D-X/O)<79"/^#>F*['V&>A67AC[J0]NPXN6JQW1A 92
M2Q#U[Y6.:))H)>7C5RG:JN;4A>N?W]7_R9M7S;P004<L^1&',KIH^2T0TAE9
M)O*9K6YHV5!;ZP4L$?E?L"K'NBT0+(5D:5FL'*1Q5OPG;V40:P6PLZ< E05H
MN\#;4X#+ IPW6CC+VQH3209]SE: Z]%*37_(L\FK53=QII=Q(KFZ&JLZ.;A^
M?!S_N+V[ \.',7B<WEP]@]N'Z?#A^O;R[@H,)Y.KZ01\ Y-BE0&;@5%$LCD5
M(,[ B'#^.\[F8)BR92;UU6O&PE6<).#SF$H2)U]4\??)&'S^] 5\TC73B"T%
MR4+1=Z3RKUTX0>GULO"*]GB%"-RS3$8"7&4A#3<%'-5XU3UZ[_X2617'-#@#
M&'X%R$5NC:'1T>6P9[&#J\7 N1[>MQAE>!8IKY+R<BGO@!1XH?,XR_0BO9"$
M9 &MR[W0:N=:^L%_'?B>"V&W[[RNI[$[K-O&7>A7PS:LMBNK[>.LTBP\X+,0
MZJS[Q+Z'_"V?-<,VV]GPV:E\=JP^[^. LR?%'<OR="NM;M.5]BLI_[CX2/!K
M&?/MYZ)(Q-])I-O!^IZM"Z17S=RSSOPH(\J+:46LH2PL[4#7$,EMF@U<PQML
MGDZIL1X/=%W?K8\'(C,YLDX^8DLN->\HF-(@REC"YC$57\&=M-$+&E[ QL"
MAAC0CHRG)0\B]48$"QX'%)#P/_7Z46]L*=3[.B&2AD R,+J9KB]Y+<6]G3B_
MP8Z_YVZ#AA/0#HJK3%*NS"F+$S:3*\*IK7'S7,-.XQ3-@PV[)P1O*;:!*M3N
M>;TMHM6,Z^)>N[WO%C7P@$?2XS!\X2Y$?.2ACKOMM6[<1D^;7@UNH)TW->L/
M_H!CL(P,?%!C^" #'W0"^*!=^%C8C Q\D!T^]6E]B-G(@ @U!A$R($)'?G>Q
MQK8+&0NSD8$,^C!D5&Q_27)D&(0:,P@9!B$[@TY&<K2+'0O)D:$.LE-GN%AP
M$@NBEC@+P92\V=HV?$"]IAEB P+LGI#CI=C&W>BII+;0>'#8IED#&GPD: Y3
M'-=\UZES>FC8IE-#)6RGTL[*'TEPO/8;JC&*L$$1/@&*\"Z*]F (&PQA.X;J
M<OH0N[%!#VZ,'FS0@X_\^F,-K+OS0W)?8 8I^(-(^7MJ8T,<W)@XGB&.9R?.
MR:A=SF.+UUG;,4HIG^<;:0($>ANGV#ZISE:;=<-\BVKK_"4\'Q5;;D:FV &\
M)UR!4X"$SI2D>]95?GBQJ58<2+;(]Z5>F)0LS3]&E(24ZP'J^HPQ^7Z@)ZBV
M-@?_ U!+ P04    " #PA%-2C.MI+A $  #P$   &0   'AL+W=O<FMS:&5E
M=',O<VAE970T-BYX;6R]6%UOVCP4_BM6M(M-:IO8^:X B4*W(?5MJ\+>7;O!
M@+4D9K93MOWZV2%-0@BAG1 W8"?G'#_G^.'Q,;T-XS_$BA )?B5Q*OK&2LKU
MM6F*:$42+*[8FJ3JS8+Q!$LUY4M3K#G!\]PIB4UD69Z98)H:@U[^[)$/>BR3
M,4W)(P<B2Q+,?]^0F&WZ!C1>'SS1Y4KJ!^:@M\9+,B7RV_J1JYE91IG3A*2"
MLA1PLN@;0W@]0JYVR"W^IV0C:F.@4WEF[(>>3.9]P]*(2$PBJ4-@]?5"1B2.
M=22%XV<1U"C7U([U\6OTSWGR*IEG+,B(Q=_I7*[Z1F" .5G@+)9/;/.5% GE
M ",6B_P3; I;RP!1)B1+"F>%(*'I]AO_*@I1<X#. 0=4.*"W.MB%@YTGND66
MIS7&$@]ZG&T U]8JFA[DM<F]538TU=LXE5R]I<I/#KX\/(R_3^[NP/!^#!YF
M7V^?P.1^-KS_,KFYNP7#Z?1V-@678+K=9< 6X$&N" >35.)T29]C H9"$"D
M3N?@B<18DCD81E&69,4X85S2/SC?M8]C(C&-/ZF0WZ9C\/'#)_ !T!3,5BP3
M*H+HF5)EI;&949'!S38#=""#,8FN@ TO +*0U>(^>K,[#'?=357+LJ"H+"C*
MX]F'"LJ9$"#"G/^FZ1+@A&6IU'5C>=UH63=QW;&:7:YFYZLY!U8;1C\S*FA>
MVUKH"[#4,-J*N8WGYO'T;_QEX"';04'/?*D7K<4,>I8+2[,=N$X)USD"M^(%
MKO&B#>@VDE=#<(E"A.RP@;3-SO:A[;=#=4NH;B?4&9,XWM^T"Y 2V0;7W8-A
MVQ &3;0M9GX00J<=K%>"]3K!CG*A4$AY\0.L(>Y@F5^&]\_ Z:!<+3@QIX/]
MHB+DP6;MV\R@53/;@1N6<,.3<3K<YRJ$GF<UD;;8A;ZMY:T-*;0JL;>.EY8K
MH((MY 9STK%=L':$P#/0 U8*"]&)"5($K!<4>0@%7J/NQ^UV(5<R#8_I]-M)
M4H3:98D2:;^IT:V&MN7 0W KF8;=.CWC>$Y BI-.^8"5ED+W' RIY!!VZ^$_
M,,3;WWD46FZSY,?,=@%7 @O]T_'#;U$'V]OC<HN9CPY"K=09=LOS"*^I.AKI
MGYJ,J,;Y1=T(UJJ_ER!B0G;2IE)6&)Z!-JB21_0&>7P7;8J ]2)#RPU@8R]:
MS)S .G#HHTIX$3P9:XI0NV+A>%83:8L9"@\("JHUQ=V2?4?454O=$8KSIVNW
M*DU%]CG848DB.M:\OIL=^[VI:]4:TZ+D1ZQVX5::B[H;V'>1P]UK]R^1@YJ2
MTF8&0ZO9EIBUZZC^+^ _S)<T%2 F"^5G7?DJ -]>K[<3R=;Y#?692=7&YL,5
M42<0UP;J_8(Q^3K1E][R3X[!7U!+ P04    " #PA%-2'!AYV),#  !.#0
M&0   'AL+W=O<FMS:&5E=',O<VAE970T-RYX;6RUEUUOVCP4Q[^*%>UBDYXU
ML?,"F0 )2K<AL;8J;+MVB2'6DIC9IG3[]+.=-*&-P[I(SPV)G7..?\>'_',\
M.C+^0Z2$2/"89X48.ZF4^P^N*S8IR;&X8'M2J"=;QG,LU9#O7+'G!"?&*<]<
MY'F1FV-:.).1F;OEDQ$[R(P6Y)8#<<ASS'_-2,:.8P<Z3Q-W=)=*/>%.1GN\
M(RLBO^YON1JY=92$YJ00E!6 D^W8F<(/<QAK!V/QC9*C.+D'.I5[QG[HP2(9
M.YXF(AG92!T"J\L#N219IB,ICI]54*=>4SN>WC]%_VB25\G<8T$N6?:=)C(=
M.T,')&2+#YF\8\?/I$HHU/$V+!/F%QPK6\\!FX.0+*^<%4%.B_**'ZN-.'&
M48<#JAS02X>@P\&O'/S7.@250V!VIDS%[,,<2SP9<78$7%NK:/K&;*;Q5NG3
M0M=]);EZ2I6?G'RZN9E_7RR78'H]!S?KSU=W8'&]GEY_6LR65V"Z6EVM5^ ]
MF"8)U77"&5@4Y;]-5^WMG$A,LW?*XNMJ#MZ^>0?> %J =<H. A>)&+E20>JE
MW$T%-"N!4 <01. +*V0JP%61D.1Y %=E5Z>(GE*<H;,1YV1S 7SX'T >\BQ
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
M4[[] OF"&MI>P,,D_4;;?*[GH&"=2![E8!5!Q.+LE_[,$[$#P/4# )(#2%6
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
MN.A9:K@2KR% )4 \7Q#"]Q.9H'FQ&?P#4$L#!!0    ( /"$4U+"!MRD]P,
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
M7!NH[TO&Y':B'50/OM%?4$L#!!0    ( /"$4U(7>$PWK@,  !$,   9
M>&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;+V7;6^C.!#'OXK%K4ZMU):'\+B7
M1$I#5JVTJ^TEVSN=3O?"!2=8!<S:IFF__=J&L!2<M-H7]R;!9N:?^<V,83+=
M$_K(,H0X>"[RDLV,C//JHVFR)$,%9%>D0J6XLR6T@%PLZ<YD%44P54Y%;CJ6
MY9L%Q*4QGZJ].SJ?DIKGN$1W%+"Z*"!]N48YV<\,VSALK/$NXW+#G$\KN$,;
MQ.^K.RI69J>2X@*5#),24+2=&0O[8VPK!V7Q%T9[UKL&$N6!D$>YN$UGAB4C
M0CE*N)2 XNL)+5&>2R41Q_=6U.A^4SKVKP_JGQ2\@'F #"U)_C=.>38S0@.D
M: OKG*_)_@:U0)[42TC.U"?8M[:6 9*:<5*TSB*" I?--WQN$]%SL/TC#D[K
MX P=W",.D]9A\EX'MW5P568:%)6'&'(XGU*R!U1:"S5YH9*IO 4^+F7=-YR*
MNUCX\?GF9K%>W7S]'*_6F]]_"QT[^ .L_KR__?8/N 2;IAD V8*%K _F&#&
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
M]#H#O')EV4&5$RT*VU/<"XT=BAVNL>L$:3;@>BJ$?IZ8 ^H^=O('4$L#!!0
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
ML_KNF*:BG2C#L*[#<+@0]Y+M,\E.CUD4EN++FXESV@%'X*]P(]S]FPA/+Z]
M(V129X>'M,!G9F<HC]<U& X7X=]ROQ$"J?O#0XYPORZU<+C6SK=;1K:8$W G
MG W%Z=H'/W%T(.?GN#!L-A:$:1JVYLH7!*JK+])^UZ4S\U8:-EL%0W-@]X-
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
M*=(QB:KUJR:*[\MF:,V5;JW*X4ZWRR ,0'_?<*[.$[-!TX"/_@=02P,$%
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
M1N4"['DEI3DLW ^&+I_] U!+ P04    " #PA%-273)42/,"   :"@  &0
M 'AL+W=O<FMS:&5E=',O<VAE970V-BYX;6RM5EU/VS 4_2M6M >0.I(XZ1=J
M*[6$:4B@(3JV9Y/<-A:)G=D.A7\_VTG3 FDH$B^)[=QS?.ZY\<=DP\6C3 $4
M>LXS)J=.JE1Q[KHR3B$G\HP7P/27%1<Y4;HKUJXL!)#$@O+,Q9XW<'-"F3.;
MV+%;,9OP4F64P:U LLQS(EX6D/'-U/&=[< =7:?*#+BS24'6L 1U7]P*W7,;
MEH3FP"3E# E839VY?Q[Y@0'8B#\4-G*OC4PJ#YP_FLY5,G4\HP@RB)6A(/KU
M!!>0989)Z_A7DSK-G :XW]ZR_[#)ZV0>B(0+GOVEB4JGSLA!":Q(F:D[OOD)
M=4)]PQ?S3-HGVE2Q@X&#XE(JGM=@K2"GK'J3Y]J(/8!_"(!K 'X+" \ @AH0
M' L(:T!HG:E2L3Y$1)'91/ -$B9:LYF&-=.B=?J4F;HOE=!?J<:IV?7E?'FY
M1-_1/$FHJ03)T!6K_B=3EY,(%*'9J8ZX7T;HY-LI^H8H0[]37DK"$CEQE99A
MR-RXGG)138D/3.EC=,.92B6Z9 DDKPE<K;]) F^36.!.Q@CB,Q3X/80][+4(
MNC@:[H];X-'Q\%%'-D%3DL#R!8=* E("]- UZ/^Y@R]L^$++%Q[@^U6 T,5D
M:Y091KU:&6QTF16(')V4!5+\M*V*W:R^AUZ "-DAL-\([']&8 _%7*HV115-
MW]*8#>U)J\ XG+A/^\5^'S4>8_PZ*'H?- P]KPEZE<>@R6/0F8<I'!<]Q#L-
MUXO'&M?J>?<$_0\M'S92AYU,=\"45D19S'-H$S)\;[6_YT_E]#%!44L0/N3T
MJ)$_ZI1_0QG-R[S#B''#-/Z2Q>9[NPW5^]1R.Z+J'S#Z%MHE;F^W][N-(\\?
M&.?C'1?^&NMV&Y\??+EUW8S#PRO&W3LT<Q!K>_F0>N\IF:J.GF:TN>#,[;'^
M9GQA+C[V,-[15+>F&R+6E$F=S4I3>F=#O0I$=1&I.HH7]FA^X$H?]+:9ZLL;
M"!.@OZ\X5]N.F:"Y#L[^ U!+ P04    " #PA%-2XB74FZ@"  !\!P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970V-RYX;6R-55UOFS 4_2L6ZD,KK04,@:8B
M2$GIM$GK5I6U>YCVX( 3K(+-;)-T_WZV(8SF@_4EV.:<XW/O#?=&6\9?1(&Q
M!*]52<7,*J2L;VQ;9 6ND+AB-:;JS8KQ"DFUY6M;U!RCW)"JTH:.$]@5(M2*
M(W/VP..(-;(D%#]P()JJ0OS/ I=L.[-<:W?P2-:%U =V'-5HC5,LG^H'KG9V
MKY*3"E-!& 4<KV;6W+U)0HTW@&>"MV*P!CJ2)6,O>O,YGUF.-H1+G$FM@-1C
M@V]Q66HA9>-WIVGU5VKB<+U3_VAB5[$LD<"WK/Q!<EG,K&L+Y'B%FE(^LNTG
MW,4ST7H9*X7Y!=L6&X06R!HA6=61E8.*T/:)7KL\# AN<(( .P+<)_@G"%Y'
M\-Y+\#N";S+3AF+RD"")XHBS+> :K=3TPB33L%7XA.JRIY*KMT3Q9/SE;I[>
MI> 2I.H/E3<E!FP%2JPR"3(F)#A/L$2D%!<*\I0FX/SL IP!0L'W@C4"T5Q$
MME0^M)J==7<NVCOAB3M=".X9E84 =S3'^5L!6P701P%W42S@J&*"LRO@N1\
M=*!SQ-#MN^GN] @]>3_]>B0:KZ^)9_2\4S71Z1?@YWPI)%<?QJ\13;_7](VF
M?T+S6XTYDH2N!\4]5KE696)4=,O8Q,$$^I&]&6;S",@+ISWHC<%);W R:C M
M&)>7$O/J/PY;F6!PN3OUG3V'AR (@Q,.@]YA,.KP&7&"ENH+&?<7'/H+@WU_
M1T P](_["WM_X:B_KVI(C%L+#^KF.O"@NH>HZ13"MZ#D$!3ZCK,7@#WH2Q7F
M:]/?A;+74-E^W/UI/T+FIG/NG2_4:&DGP3^9=B[=([XF5*C 5TK2N0J5)=[V
M^G8C66VZWY))U4O-LE#C$7,-4.]7C,G=1E_0#]SX+U!+ P04    " #PA%-2
M'%CNU8 "  #&!@  &0   'AL+W=O<FMS:&5E=',O<VAE970V."YX;6R55=%N
MFS 4_14+]:&5F@(F@:0B2&W2:9,ZK6K:[=D)EV#58&:;IOW[V88RFI*H?<&^
M]CV'<Z[-)=YQ\21S (5>"E;*N9,K55VZKMSD4!!YP2LH]4[&14&4#L76E94
MDEI0P5SL>:%;$%HZ26S7[D02\UHQ6L*=0+(N"B)>KX'QW=SQG;>%>[K-E5EP
MD[@B6UB!>JSNA([<CB6E!922\A()R.;.E7^YB$R^3?A-82=[<V2<K#E_,L&/
M=.YX1A PV"C#0/3P# M@S!!I&7];3J=[I0'VYV_LWZQW[65-)"PX^T-3E<^=
MJ8-2R$C-U#W??8?6S\3P;3B3]HEV;:[GH$TM%2]:L%90T+(9R4M;AQ[ 'Q\
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
M;Q[%+(VS_V#A0>MP7?@[U5LF#>%0HRRZF*%>=YVMFUBU\]UDHRSV)C]L\&,
MVAW _5HI^SIQ#6KXO!1_ 5!+ P04    " #PA%-2F$QQR, "  #$!P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970W,BYX;6RU56UOVC 0_BM6U$FMU)$WWEH%
M)&BH5JETJ*R;]M$D!UAU[,QV2KM?/]L)6=I!UGT8'\ O]SQWC^^XBW9</,HM
M@$+/&65RY&R5RB]=5R9;R+#L\!R8OEESD6&EMV+CREP 3BTHHV[@>7TWPX0Y
MX\B>+<0XXH6BA,%"(%ED&18O4Z!\-W)\9W]P3S9;90[<<93C#2Q!/>0+H7=N
MS9*2#)@DG"$!ZY$S\2_CH;&W!E\)[&1CC8R2%>>/9G.3CAS/! 04$F48L/YY
M@BN@U!#I,'Y4G$[MT@";ZSW[M=6NM:RPA"M.OY%4;4?.T$$IK'%!U3W??8)*
M3\_P)9Q*^XUVE:WGH*20BF<56$>0$5;^XN?J'1H OW\$$%2 X"V@>P005H#P
MO8!N!>C:ERFEV'>(L<+C2/ =$L9:LYF%?4R+UO(),VE?*J%OB<:I\6R^N/W\
M?39#T]G=[/KF"UK<3NZ6Z".:I"DQF<$4W;"RO$R>3F-0F- S;?&PC-'IR1DZ
M082A.:%4W\O(53HJP^TF5033,H+@2 1^@.:<J:U$,Y9"^IK U7)J3<%>TS1H
M98PAZ:#0/T>!%W@' KIZ-]R_. "/WP\?MJ@)ZPR%EB\\RK?6)RF: M,KA184
M,Q03F5 N"P$M'KJUAZ[UT#WB80$B :;TOQSQ-8(LI_P% "4Z*X*L"I/W0VEM
M)PV]CN=]:(FN5T?7:R7:ZV^&@W+]".?Z2"K=>Q*^8>3GV](I@RRYAY;;M, G
M76^=0>0^->OA@)'?Z;TVBO\TNNB$7O/CUXA70ONUT'ZKT#E^)EF1M3S9H&8:
M_*>2&=8>AO]>,N*O)=-.&AZK&+?1WS(0&SLGI/96,%6VA?JT'D43VX'?G$_U
MB"HGRF^:<K[-L=@0)A&%M:;T.@.=;E'.C'*C>&Z[Z(HKW9/M<JO'+ ACH._7
MG*O]QCBH!_?X%U!+ P04    " #PA%-2S>TM>J\"   J!@  &0   'AL+W=O
M<FMS:&5E=',O<VAE970W,RYX;6Q]54UOVD 0_2LC*X=$:C$8 FED+/'5E@,D
M"DE[J'I8[,&LLMZENVM(I?[XSJ[!I2UPP?LQ\]Z\F9TAWBG]:M:(%MX*(4T_
M6%N[N0]#DZZQ8*:A-BCI9J5TP2QM=1Z:C4:6>:="A%&SV0T+QF60Q/[L42>Q
M*JW@$A\UF+(HF/XY1*%V_: 5' Z>>+ZV[B!,X@W+<8'V9?.H:1?6*!DO4!JN
M)&A<]8-!ZW[8<_;>X O'G3E:@U.R5.K5;:99/VBZ@%!@:AT"H\\61RB$ Z(P
M?NPQ@YK2.1ZO#^@?O7;2LF0&1TI\Y9E=]X.[ #)<L5+8)[7[C'L]MPXO5<+X
M7]A5MCTR3DMC5;%WI@@*+JLO>]OGX<BAW3[C$.T=(A]W1>2C'#/+DEBK'6AG
M36ANX:5Z;PJ.2U>4A=5TR\G/)J.'V6SZ/)O,GQ<PF(]A]#!_GLX_3>:CZ60!
M[V&09=RECPF8RNH-N&1>C]$R+F[@"KB$&1>"3DT<6@K) 8?IGGY8T4=GZ%L1
MS)2T:P,3F6'V-T!(6FI!T4'0,+J(.,:T >W6.XB:4?-E,8;KJQN!.1,S9BUJ
M<X&B7>>L[2G:YW*FBH);>IG6 ),9C$@!ESG*E*.!,3>I4*;4"-\&2V,U/;SO
M%U@[-6O'LW;.L+[(TI14!GRCAC1X,MD5PIU'<.VX33J-* ZW)VAO:]K;B[2#
M--4E9E1FDL1DBJ=X*X@/1[RM1NLT;[?F[5[DG1[XJ/53M47-3TON_B<Y:G1.
M4_=JZMY%ZGE9+%&#6E&CT9/AE'3_@F"C58J84:T-4!'< G[!^==515B1=8\B
M;/X37WC4OP7JW$\I ZDJI:U:N3ZM!^&@ZO\_YM44G3&=4ZDHJ!6Y-AL]*HVN
M)E.UL6KCI\%269HM?KFF88[:&=#]2BE[V#B"^N\A^0U02P,$%     @ \(13
M4FU+3G8> P  >PD  !D   !X;"]W;W)K<VAE971S+W-H965T-S0N>&ULM99M
M;]HP$,>_RBG:BU;:\D1+H0(D*&RK-&@%[?9R,N0 JXZ=V4YII7WXV4Y(4PJL
M;\H+XH>[OW]W/MGN;(1\4&M$#4\IXZKKK;7.+H- +=:8$N6+#+F960J9$FVZ
M<A6H3"))G%/*@C@,FT%**/=Z'3=V*WL=D6M&.=Y*4'F:$OD\0"8V72_RM@-3
MNEIK.Q#T.AE9X0SU?78K32^H5!*:(E=4<)"X['K]Z/(JBJV#L_A)<:-J;;"A
MS(5XL)WKI.N%E@@9+K25(.;SB%?(F%4R'']*4:]:TSK6VUOUKRYX$\R<*+P2
M[!=-]+KKM3Q(<$ERIJ=B\QW+@,ZMWD(PY?YA4]J&'BQRI45:.AN"E/+B2Y[*
M1-0<SJ(##G'I$.\XQ(<<&J5#PP5:D+FPAD237D>*#4AK;=1LP^7&>9MH*+?;
M.-/2S%+CIWNST;?Q:'('_<D0IJ,?_;O1$*XG7V^FX_[=]<T$OD _2:C-.&%P
MS8NZL?D_&:(FE)W")Z <QI0Q,ZHZ@3905CI8E "# B ^ !#%,!9<KQ6,>(+)
M:X' 1%.%%&]#&L1'%8>X\*$1?88XC,/[V1!./ITJ7)G:T_-<&6.E?N><ZCVL
M5^]6CMJE\A'@1K4'#2?;.+0'!1Q,,1-24[ZJ)_J(_EFE?^;TSP[H3_)TCA+$
M$K;Q@XU?P<GK_BG\A?]E:% LU71+V3/BL=?L!(][Z,XKNO-WTDD7/YDSA'*_
MX*1L6+2RN0_J_ U4O!^J64$UCT+=DF>WOMD&6)BZUC(OCATM )\RPA.3*<H2
MLUG[> KQ5HVG[;<KHJ+4WMK$H=_:CWU185\<Q1YQC3*35"',Q%)OB,0C]=.J
M5%L?4I_M2K_]D<DNQ-OUBO2;.\E^:Q/%_H'"C<*7LS,\"M[/,DFH,B>C9;PC
M3T>2$=5.Y.A#TAW%+RO$'YGP4KU>N@V_L9/Q/48M/VJ_^NWD/ZA=8RG*E;O=
ME2',N2Z._VJT>D'TW;VY,SZP+PMW/;[(%,^2,9$KRA4P7!K)T+\P)X<L;OJB
MHT7F+LNYT.;J=<VU>1VAM 9F?BF$WG;L M5[J_</4$L#!!0    ( /"$4U)4
MN!T66@L  (M)   9    >&PO=V]R:W-H965T<R]S:&5E=#<U+GAM;+5<;6_;
M.!+^*T*P'W:!:\WWER(-D#;)-K'3%DWV[K-J*XFQMN23E*9=W(\_RE9,B1PQ
M<E6A0!,[SXQ(CO@\G!&IXZ<L_[MX2)(R^KY>I<7;HX>RW+R93(KY0[*.B]?9
M)DG-7^ZR?!V7YF-^/RDV>1(OMD;KU80@)";K>)D>G1QOO_N<GQQGC^5JF2:?
M\ZAX7*_C_,>[9)4]O3W"1\]??%G>/Y35%Y.3XTU\G]PDY5^;S[GY--E[62S7
M25HLLS3*D[NW1Z?XS0QC6EEL(?]>)D]%X_>HZLO7+/N[^G"Y>'N$JB8EJV1>
M5CYB\^-;\CY9K2I7IB'_K;T>[2]:&39_?_9^L>V]Z<W7N$C>9ZO_+!?EP]LC
M=10MDKOX<55^R9X^)'6/>.5OGJV*[?_14XU%1]'\L2BS=6UL6K!>IKN?\?=Z
M)!H&Q@]L0&H#XAJP#@-:&]"^!JPV8'T->&W ^QJ(VD#T-9"U@>QKH&H#U==
MUP;:-1!=@4//D4-]KX'WP?:BW6GR'&Z\C?=D=V-M[\JSN(Q/CO/L*<HKO/%7
M_;*]M;?VYF9<IM4TO"ES\]>EL2M/;L[_O#[_>!N=?CR+OIS/3F_/SZ++CQ>?
MOER?WEY^^AB]BF[,S%\\KI(HNXMNDGLS!<OH2_(M21^3(HK31?1ID^1Q-:6*
MZ/>SI(R7JS^,V5\W9]'OO_T1_18MT^CV(7LL#+8XGI2FT=6E)_.Z@>]V#20=
M#:31=9:6#T5TGBZ2!6!_%;;').!@8D9K/V3D><C>D:#'LV3^.J+X7Q%!! $-
M>A\VOTDVQAQUFI^%S:\>TZ#Y>=C\.LZ#C;_HW7>L ?,_>_<=-/_0N^^@^67O
MOH/F5\/B/ATV=+/^YBIP%]/]Q*=;?[0S%,]3>9/EY3*]CR[3G:J;F1SPS_;^
MV=8_Z_!_FY7QR@CUCBB@>;^SYUO[:K7P[80H2A0_GGQKSB8(QB43;=@9 ),8
M:=R&G4,PP9D#NX NJA25;=B?D#?.$&K#/H P3%@;=@G F$3"Z>F5#\,8"R%H
M&S<%<$@)1IQ.S'R<IIPHLH>UXL_W\>?!^)\E9EDX7\:[M9:1B7A=W6?_[+Y(
MOIMU9)% DW#G5C2:H[#@3J.G/DH*(8G3-1\EL.0:[IG8]TSTN+.+>OYD._4S
M\V>9SK,UV"7A-0-+HHD3V"D XX(*-UX0C##=$2^Y[Y4,]NI]O%E6_=I&9K$L
M'W-PUEY)[^H$2Z:<KO@HJI!V4#/ %\>THR-JWQ'5(SQQ420E2#O*OZA DDAG
M-EX .*RQP [NJJ>_:4]_,Q^'I4:Z,;U;PZ+WPZ*#PW*9EDEN;M!-G/X(T#M&
M=N&(1A$0W%B:XF$2<E4[: [6*S.HU*'S*8CC3#LS< ;B*.8<'GM,;%=([]&/
M_F>6HN;C)E\62723W95/<9Z$1LQJ.AY'U+%5=3Q0UJ]J!ZT;6"/AA02 <:*1
M&Q$ 9A2;=03$JA,.RY,3D-/-)H^7144<1JINX^^AP;)"@<4XX;"DC<.LW2,<
M/LE*Y,8"(&+DS0V TQO+JW8'+%GC,%M_VLMG+:C%X=/#4B#6H\2#6%(D:& \
M:@>M&]KD$[JQ*JFS"1^H):?8P<T G"+5.@\.#;'T2\+T^],K..*SJ) ,NPP
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
MOS3_!-DVZ=;0HG:-\4UHTV;=L#(/&TB[P:P70NB=80/XIW+T!U!+ P04
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
MN=Y9<<&PTE.Q]F0A &<6Q*@7^G[/8YCDSCBV:S=B'/.MHB2'&X'DEC$LGB9
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
M,,>V--@<&I0QTSV$W4#6; OC0]@M""/4.H1Y ,QRL:-%NNC"""&.XYB'N#L
MAYEC42V(91?'39LRVL(.,F^WF;=[,W^3I7F.=EFZ"264_9KM['MG,L?A6O8!
MF&7:6(--(6N$8FU*9@",<H74L@\-2E7*M.Q#@V*7:/-["PWJ,D<3B0? B(,M
MIF6_"[,MJL2D)1^ $8?KREQV89;);9?!N7?:W#N]N?>2=1H+]"Q4@1'JC:!J
M2?\[7 ><K@_,T@.Z!E"<FWH5 %"$$;T(=%&FI5:WI@+ ENMR;09O !2V;<W[
M6V!$QR*:BCT 96-7T].BBR*NC2U= 0#,YLS4]+2$8#9S,:P MU6 VZN >W4(
MK?,.9=SM5!Q5-+E6#J^[*)-3IJ&F@"V3<6TR9EV4Y=JVELLY@'*Z&0=0V-11
MMX#WA',]XUT4=<W.FN^B"+<8U8:\ V"68W?J/013^^F1>L_:C+/>C,_\+ F3
M%U7R18:","K*$T9U1D!GY3FB[*Z:YY B:MONOD]#JN\%71 ><I,??#1U0';U
M30'"$*VPS$&0OB&P[LQJJH!"T++M01B']86YZ%*LH;Z5WG5!YM#10EB"H"/;
M 6^EP7NEL:I/BD6N%*&.AZHJ[ JIM-+*Y-=?U$[W>_V-Q+Z0&@$I5GW<!,7#
M@:+/J?X>":$<K&\@$,K2U3"#4,322M,<0&%7W[)N(!1E>CGIHDS.B"9E#T+9
M^AOU O+>III?=Y!?!.MZ 5'4U 1C[%USQ")[J2[O<J6$(I'U(:;M;>\')]4U
MB=9_12X\ O0OR,6ROO[[WWQ]&:F.@2]ADJ-(;-10>.BJY9G5%WQU0Z:[ZI+E
M.94RC:O'K? #D94 ]?\F3>5[HQR@O64=_P=02P,$%     @ \(134K10ON14
M @  7@P   T   !X;"]S='EL97,N>&ULU5=;:]LP%/XK0AFCA5''SI*NJVW8
M"H7!.@K-P]Z*8LNV0!=/EC.GOWZ2I=A.6G>A#UOR$IV+SG>^(YU$)V&E-A0_
M%!@KT##*JP@62I6?/:]*"LQ0=2%*S+4G$Y(AI569>U4I,4HK$\2H%TRG"X\A
MPF$<\IK=,E6!1-1<17#>F8!=OJ41]!<?(;!P-R+%$7P\>_^K%NKZ';#KY,-D
M,GT\O]ZWG[6.<^B]"#H_ /1B.HZK?6/0BX.@7T$> [[<!>Z!_A;XZ;!B7R_7
M%>RY2XO#3/#^[F;0&G1^Q#!8(QK!&T3)2A(3E2%&Z,:: V-(!!42*-TTFI!O
M+-63=?M6,_WD<!CA0K:Y;0;[N7+;]QQ;S1 DE'8$ V@-<5@BI;#DMUII-[?&
M9R[@Y.6FU QSB39^,(=]0+OH)"LA4RR[-#[<FN*0XLS0D20OS*I$Z1FG4H)I
M(24H%QRU'+813M"P":;TP7S9?F8[V$TVN-FIN5?>B9J0$RV,50S^$,UB#V&#
M-^&"DJR%^EKK<GBKFW;!]Q)GI&GU)NL(C*'[X^BH+.GF"R4Y9]@6?W#".$3;
M.% (29YT-M,JB39@"<$:2T62H>6W1.42-VK;3DTVSCDX0<[_]IQSS+%$=$A:
M]_XQG_*;&;O7Z7]P;G]6]AF_2')V>?P<W8M\["07IT#R!*Y[=G7\'-W<='0D
M/?=^#X:$G1&ALP(SBD7PAQG]:)\4K&I"%>%.*TB:8OYL4M#P"JWTL+^#K_>G
M.$,U5<O.&<%>OL,IJ=E5M^O>'(3;U<O?37G^HDW8_Z.(_P!02P,$%     @
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
MU^77SLFM<L6YOJ\8GO\"4$L#!!0    ( /"$4U(@< [9) (  *DO   3
M6T-O;G1E;G1?5'EP97-=+GAM;,W:36[;,! %X*L8V@86S7^UB+-INVVSZ 58
M:1P+ED2"9%+G]J7D)$"+U$C@ GT;"S;)>2,.\*U\_?TQ4%H=QV%*VVJ?<_C(
M6&KW-+I4^T!36=GY.+I<OL8[%EQ[<'?$Q&9C6.NG3%->Y[E&=7/]F7;N?LBK
M+\?R<^K]M*TB#:E:?3IMG+.VE0MAZ%N7RSI[F+H_4M9/"74YN>Q)^SZDJ[*A
M8J\FS"M_#W@Z]^V!8NP[6MVZF+^ZL>QBQX&E_#A0JL^7>*5'O]OU+76^O1_+
MD3J%2*Y+>Z(\#O6IZ-7YY%QNF$Z?_.+\I<RYP++S-OJ0RL0BO3_N>23SZ74H
MA2CF_OPKOB26TA>_'\W3[JA[8W:YWI\^'I9Y)+8\+K_CWV?\4O^=?0B0/B1(
M'PJD#PW2AP'IPX+TT8#T\0&D#[Y!:01%5(Y"*D<QE:.@RE%4Y2BL<A17.0JL
M'$56@2*K0)%5H,@J4&05*+(*%%D%BJP"15:!(JM D56BR"I19)4HLDH4626*
MK!)%5HDBJT215:+(*E%D52BR*A19%8JL"D56A2*K0I%5H<BJ4&15*+(J%%DU
MBJP:15:-(JM&D56CR*I19-4HLFH4636*K!I%5H,BJT&1U:#(:E!D-2BR&A19
M#8JL!D56@R*K09'5HLAJ462U*+):%%DMBJP615:+(JM%D=6BR&I19&U09&U0
M9&U09&W^IZP_O#_\X_CE68^NGY[SV?(/_9M?4$L! A0#%     @ \(134@=!
M36*!    L0   !               ( !     &1O8U!R;W!S+V%P<"YX;6Q0
M2P$"% ,4    " #PA%-2@"CF8NX    K @  $0              @ &O
M9&]C4')O<',O8V]R92YX;6Q02P$"% ,4    " #PA%-2F5R<(Q &  "<)P
M$P              @ ', 0  >&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0
M   ( /"$4U(6Z_>,1P8  &(9   8              " @0T(  !X;"]W;W)K
M<VAE971S+W-H965T,2YX;6Q02P$"% ,4    " #PA%-2RC(=7=,&  !0'P
M&               @(&*#@  >&PO=V]R:W-H965T<R]S:&5E=#(N>&UL4$L!
M A0#%     @ \(134J5D$]O:!@  S1L  !@              ("!DQ4  'AL
M+W=O<FMS:&5E=',O<VAE970S+GAM;%!+ 0(4 Q0    ( /"$4U)+2T%C$P,
M *<)   8              " @:,<  !X;"]W;W)K<VAE971S+W-H965T-"YX
M;6Q02P$"% ,4    " #PA%-2< C]/T((  "7(@  &               @('L
M'P  >&PO=V]R:W-H965T<R]S:&5E=#4N>&UL4$L! A0#%     @ \(134LB#
ME8UZ!P  ."8  !@              ("!9"@  'AL+W=O<FMS:&5E=',O<VAE
M970V+GAM;%!+ 0(4 Q0    ( /"$4U*V^X%=H2D  %V%   8
M  " @10P  !X;"]W;W)K<VAE971S+W-H965T-RYX;6Q02P$"% ,4    " #P
MA%-288T;>R4&   (#@  &               @('K60  >&PO=V]R:W-H965T
M<R]S:&5E=#@N>&UL4$L! A0#%     @ \(134NW<5VUB P  $ <  !@
M         ("!1F   'AL+W=O<FMS:&5E=',O<VAE970Y+GAM;%!+ 0(4 Q0
M   ( /"$4U(OW>QQS 4  "0/   9              " @=YC  !X;"]W;W)K
M<VAE971S+W-H965T,3 N>&UL4$L! A0#%     @ \(134E5_>6]G @  ,@4
M !D              ("!X6D  'AL+W=O<FMS:&5E=',O<VAE970Q,2YX;6Q0
M2P$"% ,4    " #PA%-2GM"&G/\$   _"P  &0              @(%_;
M>&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;%!+ 0(4 Q0    ( /"$4U(C)8QZ
MR H   $:   9              " @;5Q  !X;"]W;W)K<VAE971S+W-H965T
M,3,N>&UL4$L! A0#%     @ \(134A<X>YPT P  M 8  !D
M ("!M'P  'AL+W=O<FMS:&5E=',O<VAE970Q-"YX;6Q02P$"% ,4    " #P
MA%-2!#^<G(H*  !X&P  &0              @($?@   >&PO=V]R:W-H965T
M<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    ( /"$4U(4;A\)  ,  )8&   9
M          " @>"*  !X;"]W;W)K<VAE971S+W-H965T,38N>&UL4$L! A0#
M%     @ \(134B@&S@EA!P  #A\  !D              ("!%XX  'AL+W=O
M<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"% ,4    " #PA%-2;\]"6]8"   W
M!@  &0              @(&OE0  >&PO=V]R:W-H965T<R]S:&5E=#$X+GAM
M;%!+ 0(4 Q0    ( /"$4U+[C-%BS08  ,</   9              " @;R8
M  !X;"]W;W)K<VAE971S+W-H965T,3DN>&UL4$L! A0#%     @ \(134B^O
M:&($#   9R   !D              ("!P)\  'AL+W=O<FMS:&5E=',O<VAE
M970R,"YX;6Q02P$"% ,4    " #PA%-2!N_KVX<'   \%   &0
M    @('[JP  >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;%!+ 0(4 Q0    (
M /"$4U*V8$SRJ0<  &(4   9              " @;FS  !X;"]W;W)K<VAE
M971S+W-H965T,C(N>&UL4$L! A0#%     @ \(134JZ %5Z7!P  ,A0  !D
M             ("!F;L  'AL+W=O<FMS:&5E=',O<VAE970R,RYX;6Q02P$"
M% ,4    " #PA%-2H]/\ML$)  #B&@  &0              @(%GPP  >&PO
M=V]R:W-H965T<R]S:&5E=#(T+GAM;%!+ 0(4 Q0    ( /"$4U(2<CJ;H@,
M )0'   9              " @5_-  !X;"]W;W)K<VAE971S+W-H965T,C4N
M>&UL4$L! A0#%     @ \(134@;6^L12,@  9:L  !D              ("!
M.-$  'AL+W=O<FMS:&5E=',O<VAE970R-BYX;6Q02P$"% ,4    " #PA%-2
MXYOH8_$"   -!@  &0              @('! P$ >&PO=V]R:W-H965T<R]S
M:&5E=#(W+GAM;%!+ 0(4 Q0    ( /"$4U*="X,F& ,  #@&   9
M      " @>D& 0!X;"]W;W)K<VAE971S+W-H965T,C@N>&UL4$L! A0#%
M  @ \(134NVTPW1J!0  XPX  !D              ("!. H! 'AL+W=O<FMS
M:&5E=',O<VAE970R.2YX;6Q02P$"% ,4    " #PA%-2MF'#27@"   R!0
M&0              @('9#P$ >&PO=V]R:W-H965T<R]S:&5E=#,P+GAM;%!+
M 0(4 Q0    ( /"$4U*>\CKH004  )8,   9              " @8@2 0!X
M;"]W;W)K<VAE971S+W-H965T,S$N>&UL4$L! A0#%     @ \(134NHEK=\)
M P  ,@8  !D              ("! !@! 'AL+W=O<FMS:&5E=',O<VAE970S
M,BYX;6Q02P$"% ,4    " #PA%-2 ?89O@P&   1#P  &0
M@(% &P$ >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM;%!+ 0(4 Q0    ( /"$
M4U(CLQ*!%0,  +L&   9              " @8,A 0!X;"]W;W)K<VAE971S
M+W-H965T,S0N>&UL4$L! A0#%     @ \(134C?N7JPW!0  -!   !D
M         ("!SR0! 'AL+W=O<FMS:&5E=',O<VAE970S-2YX;6Q02P$"% ,4
M    " #PA%-28!X\KDD&   ^#P  &0              @($]*@$ >&PO=V]R
M:W-H965T<R]S:&5E=#,V+GAM;%!+ 0(4 Q0    ( /"$4U(/(KL4# 4  -8-
M   9              " @;TP 0!X;"]W;W)K<VAE971S+W-H965T,S<N>&UL
M4$L! A0#%     @ \(134KNT:KP3 P  908  !D              ("! #8!
M 'AL+W=O<FMS:&5E=',O<VAE970S."YX;6Q02P$"% ,4    " #PA%-2%S>M
M=[,#  !Q!P  &0              @(%*.0$ >&PO=V]R:W-H965T<R]S:&5E
M=#,Y+GAM;%!+ 0(4 Q0    ( /"$4U(@AO:FH D  ,@T   9
M  " @30] 0!X;"]W;W)K<VAE971S+W-H965T-# N>&UL4$L! A0#%     @
M\(134M]^5V@K P  CP@  !D              ("!"T<! 'AL+W=O<FMS:&5E
M=',O<VAE970T,2YX;6Q02P$"% ,4    " #PA%-2H!$IZ9H#  !.#@  &0
M            @(%M2@$ >&PO=V]R:W-H965T<R]S:&5E=#0R+GAM;%!+ 0(4
M Q0    ( /"$4U)670,+<00  (X4   9              " @3Y. 0!X;"]W
M;W)K<VAE971S+W-H965T-#,N>&UL4$L! A0#%     @ \(134N@B6&FC @
M?P8  !D              ("!YE(! 'AL+W=O<FMS:&5E=',O<VAE970T-"YX
M;6Q02P$"% ,4    " #PA%-2N^E^B(0$  #F%   &0              @('
M50$ >&PO=V]R:W-H965T<R]S:&5E=#0U+GAM;%!+ 0(4 Q0    ( /"$4U*,
MZVDN$ 0  / 0   9              " @7M: 0!X;"]W;W)K<VAE971S+W-H
M965T-#8N>&UL4$L! A0#%     @ \(134AP8>=B3 P  3@T  !D
M     ("!PEX! 'AL+W=O<FMS:&5E=',O<VAE970T-RYX;6Q02P$"% ,4
M" #PA%-2.D3R3;($  "O%P  &0              @(&,8@$ >&PO=V]R:W-H
M965T<R]S:&5E=#0X+GAM;%!+ 0(4 Q0    ( /"$4U)?$T\,L@(  .<&   9
M              " @75G 0!X;"]W;W)K<VAE971S+W-H965T-#DN>&UL4$L!
M A0#%     @ \(134D4@90I> @  RP4  !D              ("!7FH! 'AL
M+W=O<FMS:&5E=',O<VAE970U,"YX;6Q02P$"% ,4    " #PA%-2OXY8("<$
M  !>%   &0              @('S; $ >&PO=V]R:W-H965T<R]S:&5E=#4Q
M+GAM;%!+ 0(4 Q0    ( /"$4U*SM]_ "P,  .0(   9              "
M@5%Q 0!X;"]W;W)K<VAE971S+W-H965T-3(N>&UL4$L! A0#%     @ \(13
M4L(&W*3W P  F0P  !D              ("!DW0! 'AL+W=O<FMS:&5E=',O
M<VAE970U,RYX;6Q02P$"% ,4    " #PA%-2/=G^U]0#  #D#   &0
M        @('!> $ >&PO=V]R:W-H965T<R]S:&5E=#4T+GAM;%!+ 0(4 Q0
M   ( /"$4U((F9)2(0,  /P)   9              " @<Q\ 0!X;"]W;W)K
M<VAE971S+W-H965T-34N>&UL4$L! A0#%     @ \(134A=X3#>N P  $0P
M !D              ("!)( ! 'AL+W=O<FMS:&5E=',O<VAE970U-BYX;6Q0
M2P$"% ,4    " #PA%-2%/2A]# "  !C!   &0              @($)A $
M>&PO=V]R:W-H965T<R]S:&5E=#4W+GAM;%!+ 0(4 Q0    ( /"$4U+\9Q=!
M604  #$8   9              " @7"& 0!X;"]W;W)K<VAE971S+W-H965T
M-3@N>&UL4$L! A0#%     @ \(134LUW-V C P  TPH  !D
M ("! (P! 'AL+W=O<FMS:&5E=',O<VAE970U.2YX;6Q02P$"% ,4    " #P
MA%-2="W]^88#  #1"P  &0              @(%:CP$ >&PO=V]R:W-H965T
M<R]S:&5E=#8P+GAM;%!+ 0(4 Q0    ( /"$4U)#SP1Z?P0  *,1   9
M          " @1>3 0!X;"]W;W)K<VAE971S+W-H965T-C$N>&UL4$L! A0#
M%     @ \(134CJ;DC[X @  +P<  !D              ("!S9<! 'AL+W=O
M<FMS:&5E=',O<VAE970V,BYX;6Q02P$"% ,4    " #PA%-2&+9Y"IX#  ",
M"P  &0              @('\F@$ >&PO=V]R:W-H965T<R]S:&5E=#8S+GAM
M;%!+ 0(4 Q0    ( /"$4U)JN&(HZ 0  !L3   9              " @=&>
M 0!X;"]W;W)K<VAE971S+W-H965T-C0N>&UL4$L! A0#%     @ \(134DE\
M8;9] @  \04  !D              ("!\*,! 'AL+W=O<FMS:&5E=',O<VAE
M970V-2YX;6Q02P$"% ,4    " #PA%-273)42/,"   :"@  &0
M    @(&DI@$ >&PO=V]R:W-H965T<R]S:&5E=#8V+GAM;%!+ 0(4 Q0    (
M /"$4U+B)=2;J (  'P'   9              " @<ZI 0!X;"]W;W)K<VAE
M971S+W-H965T-C<N>&UL4$L! A0#%     @ \(134AQ8[M6  @  Q@8  !D
M             ("!K:P! 'AL+W=O<FMS:&5E=',O<VAE970V."YX;6Q02P$"
M% ,4    " #PA%-2A:F#\<,"  ")!P  &0              @(%DKP$ >&PO
M=V]R:W-H965T<R]S:&5E=#8Y+GAM;%!+ 0(4 Q0    ( /"$4U*989KYL@(
M "4(   9              " @5ZR 0!X;"]W;W)K<VAE971S+W-H965T-S N
M>&UL4$L! A0#%     @ \(134F[:KEU@ @  :@8  !D              ("!
M1[4! 'AL+W=O<FMS:&5E=',O<VAE970W,2YX;6Q02P$"% ,4    " #PA%-2
MF$QQR, "  #$!P  &0              @('>MP$ >&PO=V]R:W-H965T<R]S
M:&5E=#<R+GAM;%!+ 0(4 Q0    ( /"$4U+-[2UZKP(  "H&   9
M      " @=6Z 0!X;"]W;W)K<VAE971S+W-H965T-S,N>&UL4$L! A0#%
M  @ \(134FU+3G8> P  >PD  !D              ("!N[T! 'AL+W=O<FMS
M:&5E=',O<VAE970W-"YX;6Q02P$"% ,4    " #PA%-25+@=%EH+  "+20
M&0              @($0P0$ >&PO=V]R:W-H965T<R]S:&5E=#<U+GAM;%!+
M 0(4 Q0    ( /"$4U(DX"3JH00  $\2   9              " @:', 0!X
M;"]W;W)K<VAE971S+W-H965T-S8N>&UL4$L! A0#%     @ \(134D%GO -#
M#   O%D  !D              ("!>=$! 'AL+W=O<FMS:&5E=',O<VAE970W
M-RYX;6Q02P$"% ,4    " #PA%-2HUXTRV0"   V!P  &0
M@('SW0$ >&PO=V]R:W-H965T<R]S:&5E=#<X+GAM;%!+ 0(4 Q0    ( /"$
M4U+/>.L9RP,  /,.   9              " @8[@ 0!X;"]W;W)K<VAE971S
M+W-H965T-SDN>&UL4$L! A0#%     @ \(134N^ V16H @  FP8  !D
M         ("!D.0! 'AL+W=O<FMS:&5E=',O<VAE970X,"YX;6Q02P$"% ,4
M    " #PA%-2?9RZL<8"  #Q"   &0              @(%OYP$ >&PO=V]R
M:W-H965T<R]S:&5E=#@Q+GAM;%!+ 0(4 Q0    ( /"$4U*C\<W52P,  .<*
M   9              " @6SJ 0!X;"]W;W)K<VAE971S+W-H965T.#(N>&UL
M4$L! A0#%     @ \(134A21X9%:!0  <14  !D              ("![NT!
M 'AL+W=O<FMS:&5E=',O<VAE970X,RYX;6Q02P$"% ,4    " #PA%-2M%"^
MY%0"  !>#   #0              @ %_\P$ >&PO<W1Y;&5S+GAM;%!+ 0(4
M Q0    ( /"$4U*7BKL<P    !,"   +              "  ?[U 0!?<F5L
M<R\N<F5L<U!+ 0(4 Q0    ( /"$4U)?$+DY5@8  +XV   /
M  "  >?V 0!X;"]W;W)K8F]O:RYX;6Q02P$"% ,4    " #PA%-2-$X[?7H"
M    ,0  &@              @ %J_0$ >&PO7W)E;',O=V]R:V)O;VLN>&UL
M+G)E;'-02P$"% ,4    " #PA%-2(' .V20"  "I+P  $P
M@ $<  ( 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08     6P!; /08  !Q @(
"   !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>97
<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>98
<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>99
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.20.4</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>351</ContextCount>
  <ElementCount>439</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>73</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>8</UnitCount>
  <MyReports>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0001001 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>1001002 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>1002003 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>1003004 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>1004005 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>1005006 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>2101101 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>2106102 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>2108103 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>2112104 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>2119105 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>2122106 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>2124107 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>2130108 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>2134109 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>2142110 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>2146111 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>2154112 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>2156113 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>2158114 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>2163115 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>2167116 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>2171117 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>2173118 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>2175119 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>2202201 - 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="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>2303301 - 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>
      <ParentRole>http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>2309302 - 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>
      <ParentRole>http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>2313303 - 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>
      <ParentRole>http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>2320304 - Disclosure - ACCRUED LIABILITIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ACCRUEDLIABILITIESTables</Role>
      <ShortName>ACCRUED LIABILITIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/ACCRUEDLIABILITIES</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>2325305 - Disclosure - INCOME TAX (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/INCOMETAXTables</Role>
      <ShortName>INCOME TAX (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/INCOMETAX</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>2331306 - Disclosure - SHAREHOLDERS??? EQUITY (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables</Role>
      <ShortName>SHAREHOLDERS??? EQUITY (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/SHAREHOLDERSEQUITY</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>2335307 - 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>
      <ParentRole>http://www.tylertech.com/role/SHAREBASEDCOMPENSATION</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>2343308 - 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>
      <ParentRole>http://www.tylertech.com/role/EARNINGSPERSHARE</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>2347309 - Disclosure - LEASES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LEASESTables</Role>
      <ShortName>LEASES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/LEASES</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>2359310 - 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>
      <ParentRole>http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>2364311 - 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>
      <ParentRole>http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>2368312 - 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>
      <ParentRole>http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONS</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>2376313 - 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>
      <ParentRole>http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>2404401 - 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>40</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>2405402 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for credit loss rollforward (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for credit loss rollforward (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>2407403 - 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>42</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>2410404 - 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>43</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>2411405 - 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>44</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>2414406 - 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>45</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>2415407 - 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>46</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>2416408 - 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>47</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>2417409 - 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>48</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>2418410 - 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>49</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>2421411 - Disclosure - ACCRUED LIABILITIES (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail</Role>
      <ShortName>ACCRUED LIABILITIES (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/ACCRUEDLIABILITIESTables</ParentRole>
      <Position>50</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>2423412 - Disclosure - REVOLVING LINE OF CREDIT (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail</Role>
      <ShortName>REVOLVING LINE OF CREDIT (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>2426413 - Disclosure - INCOME TAX - Income Tax (Benefit) Provision on Income From Operations (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail</Role>
      <ShortName>INCOME TAX - Income Tax (Benefit) Provision on Income From Operations (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>2427414 - 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>53</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>2428415 - 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>54</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>2429416 - 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>55</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>2432417 - 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>56</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>2433418 - 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>57</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>2436419 - 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>58</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>2437420 - 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>59</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>2438421 - 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>60</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>2439422 - 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>61</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>2440423 - 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>62</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>2441424 - 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>63</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>2444425 - 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>64</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>2445426 - 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>65</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>2448427 - 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>66</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>2449428 - 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>67</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>2450429 - 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>68</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>2451430 - 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>69</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>2452431 - 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>70</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>2453432 - 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>71</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>2455433 - 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>72</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>2457434 - 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>73</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>2460435 - 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>74</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>2461436 - 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>75</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>2462437 - 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>76</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>2465438 - 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>77</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>2466439 - Disclosure - DISAGGREGATION OF REVENUE - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails</Role>
      <ShortName>DISAGGREGATION OF REVENUE - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>2469440 - 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>79</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>2470441 - 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>80</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>2472442 - Disclosure - DEFERRED COMMISSIONS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails</Role>
      <ShortName>DEFERRED COMMISSIONS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/DEFERREDCOMMISSIONS</ParentRole>
      <Position>81</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>2474443 - Disclosure - SUBSEQUENT EVENTS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails</Role>
      <ShortName>SUBSEQUENT EVENTS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/SUBSEQUENTEVENTS</ParentRole>
      <Position>82</Position>
    </Report>
    <Report instance="tyl-20201231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>2477444 - 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/QUARTERLYFINANCIALINFORMATIONunauditedTables</ParentRole>
      <Position>83</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="tyl-20201231.htm">tyl-20201231.htm</File>
    <File>tyl-20201231.xsd</File>
    <File>tyl-20201231_cal.xml</File>
    <File>tyl-20201231_def.xml</File>
    <File>tyl-20201231_lab.xml</File>
    <File>tyl-20201231_pre.xml</File>
    <File>tyl12312020exhibit-23.htm</File>
    <File>tyl12312020exhibit311.htm</File>
    <File>tyl12312020exhibit312.htm</File>
    <File>tyl12312020exhibit321.htm</File>
  </InputFiles>
  <SupplementalFiles>
    <File>tyl-20201231_g1.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy>http://fasb.org/srt/2020-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2020-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/us-gaap/2020-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>102
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "tyl-20201231.htm": {
   "axisCustom": 0,
   "axisStandard": 29,
   "contextCount": 351,
   "dts": {
    "calculationLink": {
     "local": [
      "tyl-20201231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tyl-20201231_def.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-eedm-def-2020-01-31.xml",
      "http://xbrl.fasb.org/srt/2020/elts/srt-eedm1-def-2020-01-31.xml"
     ]
    },
    "inline": {
     "local": [
      "tyl-20201231.htm"
     ]
    },
    "labelLink": {
     "local": [
      "tyl-20201231_lab.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-doc-2020-01-31.xml",
      "https://xbrl.sec.gov/dei/2020/dei-doc-2020-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tyl-20201231_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "https://xbrl.sec.gov/dei/2020/dei-ref-2020-01-31.xml",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-ref-2020-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "tyl-20201231.xsd"
     ],
     "remote": [
      "http://xbrl.fasb.org/srt/2020/elts/srt-2020-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/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://xbrl.fasb.org/srt/2020/elts/srt-types-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-roles-2020-01-31.xsd",
      "http://xbrl.fasb.org/srt/2020/elts/srt-roles-2020-01-31.xsd",
      "https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-types-2020-01-31.xsd",
      "https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-parts-codification-2020-01-31.xsd"
     ]
    }
   },
   "elementCount": 600,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2020-01-31": 5,
    "http://www.tylertech.com/20201231": 8,
    "http://xbrl.sec.gov/dei/2020-01-31": 4,
    "total": 17
   },
   "keyCustom": 35,
   "keyStandard": 404,
   "memberCustom": 31,
   "memberStandard": 42,
   "nsprefix": "tyl",
   "nsuri": "http://www.tylertech.com/20201231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0001001 - Document - Cover",
     "role": "http://www.tylertech.com/role/Cover",
     "shortName": "Cover",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2112104 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS",
     "role": "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS",
     "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2119105 - Disclosure - ACCRUED LIABILITIES",
     "role": "http://www.tylertech.com/role/ACCRUEDLIABILITIES",
     "shortName": "ACCRUED LIABILITIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2122106 - Disclosure - REVOLVING LINE OF CREDIT",
     "role": "http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT",
     "shortName": "REVOLVING LINE OF CREDIT",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2124107 - Disclosure - INCOME TAX",
     "role": "http://www.tylertech.com/role/INCOMETAX",
     "shortName": "INCOME TAX",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2130108 - Disclosure - SHAREHOLDERS\u2019 EQUITY",
     "role": "http://www.tylertech.com/role/SHAREHOLDERSEQUITY",
     "shortName": "SHAREHOLDERS\u2019 EQUITY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2134109 - Disclosure - SHARE-BASED COMPENSATION",
     "role": "http://www.tylertech.com/role/SHAREBASEDCOMPENSATION",
     "shortName": "SHARE-BASED COMPENSATION",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2142110 - Disclosure - EARNINGS PER SHARE",
     "role": "http://www.tylertech.com/role/EARNINGSPERSHARE",
     "shortName": "EARNINGS PER SHARE",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2146111 - Disclosure - LEASES",
     "role": "http://www.tylertech.com/role/LEASES",
     "shortName": "LEASES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2154112 - Disclosure - EMPLOYEE BENEFIT PLANS",
     "role": "http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS",
     "shortName": "EMPLOYEE BENEFIT PLANS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2156113 - Disclosure - COMMITMENTS AND CONTINGENCIES",
     "role": "http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES",
     "shortName": "COMMITMENTS AND CONTINGENCIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1001002 - Statement - Consolidated Statements of Comprehensive Income",
     "role": "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
     "shortName": "Consolidated Statements of Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:SellingGeneralAndAdministrativeExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2158114 - Disclosure - SEGMENT AND RELATED INFORMATION",
     "role": "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATION",
     "shortName": "SEGMENT AND RELATED INFORMATION",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2163115 - Disclosure - DISAGGREGATION OF REVENUE",
     "role": "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUE",
     "shortName": "DISAGGREGATION OF REVENUE",
     "subGroupType": "",
     "uniqueAnchor": null
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2167116 - 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": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2171117 - Disclosure - DEFERRED COMMISSIONS",
     "role": "http://www.tylertech.com/role/DEFERREDCOMMISSIONS",
     "shortName": "DEFERRED COMMISSIONS",
     "subGroupType": "",
     "uniqueAnchor": null
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2173118 - Disclosure - SUBSEQUENT EVENTS",
     "role": "http://www.tylertech.com/role/SUBSEQUENTEVENTS",
     "shortName": "SUBSEQUENT EVENTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2175119 - Disclosure - QUARTERLY FINANCIAL INFORMATION (unaudited)",
     "role": "http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited",
     "shortName": "QUARTERLY FINANCIAL INFORMATION (unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2202201 - 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",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "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",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2303301 - 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",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2309302 - 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",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2313303 - 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": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1002003 - Statement - Consolidated Balance Sheets",
     "role": "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2320304 - Disclosure - ACCRUED LIABILITIES (Tables)",
     "role": "http://www.tylertech.com/role/ACCRUEDLIABILITIESTables",
     "shortName": "ACCRUED LIABILITIES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2325305 - Disclosure - INCOME TAX (Tables)",
     "role": "http://www.tylertech.com/role/INCOMETAXTables",
     "shortName": "INCOME TAX (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2331306 - Disclosure - SHAREHOLDERS\u2019 EQUITY (Tables)",
     "role": "http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables",
     "shortName": "SHAREHOLDERS\u2019 EQUITY (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2335307 - Disclosure - SHARE-BASED COMPENSATION (Tables)",
     "role": "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables",
     "shortName": "SHARE-BASED COMPENSATION (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2343308 - Disclosure - EARNINGS PER SHARE (Tables)",
     "role": "http://www.tylertech.com/role/EARNINGSPERSHARETables",
     "shortName": "EARNINGS PER SHARE (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2347309 - Disclosure - LEASES (Tables)",
     "role": "http://www.tylertech.com/role/LEASESTables",
     "shortName": "LEASES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2359310 - Disclosure - SEGMENT AND RELATED INFORMATION (Tables)",
     "role": "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables",
     "shortName": "SEGMENT AND RELATED INFORMATION (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2364311 - Disclosure - DISAGGREGATION OF REVENUE (Tables)",
     "role": "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables",
     "shortName": "DISAGGREGATION OF REVENUE (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2368312 - 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",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2376313 - Disclosure - QUARTERLY FINANCIAL INFORMATION (unaudited) (Tables)",
     "role": "http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables",
     "shortName": "QUARTERLY FINANCIAL INFORMATION (unaudited) (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1003004 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "role": "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PreferredStockParOrStatedValuePerShare",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "tyl:RecurringRevenuePercentageOfTotalRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2404401 - 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",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "tyl:RecurringRevenuePercentageOfTotalRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iec74e62741324a67999f82c1f1432c6a_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2405402 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for credit loss rollforward (Details)",
     "role": "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for credit loss rollforward (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iaec3f46826db4f818ca92b920242ca81_I20171231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2407403 - Disclosure - ACQUISITIONS - Narrative (Detail)",
     "role": "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail",
     "shortName": "ACQUISITIONS - Narrative (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationContingentConsiderationLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2410404 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411405 - 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",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iec74e62741324a67999f82c1f1432c6a_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2414406 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i5803bdc414da480a9dbe249393f7f1a4_D20190101-20191231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:GoodwillAcquiredDuringPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2415407 - 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
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2416408 - 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",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2417409 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i85174adb41d4484092b78a7104980b10_D20200101-20201231",
      "decimals": null,
      "lang": "en-US",
      "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2418410 - 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": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1004005 - Statement - Consolidated Statements of Cash Flows",
     "role": "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2421411 - Disclosure - ACCRUED LIABILITIES (Detail)",
     "role": "http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail",
     "shortName": "ACCRUED LIABILITIES (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermLineOfCredit",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2423412 - Disclosure - REVOLVING LINE OF CREDIT (Detail)",
     "role": "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
     "shortName": "REVOLVING LINE OF CREDIT (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-6",
      "lang": "en-US",
      "name": "us-gaap:LettersOfCreditOutstandingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2426413 - Disclosure - INCOME TAX - Income Tax (Benefit) Provision on Income From Operations (Detail)",
     "role": "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail",
     "shortName": "INCOME TAX - Income Tax (Benefit) Provision on Income From Operations (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2427414 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2428415 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "tyl:NetOperatingLossCarryback",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2429416 - Disclosure - INCOME TAX - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail",
     "shortName": "INCOME TAX - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-5",
      "lang": "en-US",
      "name": "us-gaap:TaxCreditCarryforwardAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfStockholdersEquityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2432417 - Disclosure - SHAREHOLDERS\u2019 EQUITY - Summary of Activities in Common Stock (Detail)",
     "role": "http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail",
     "shortName": "SHAREHOLDERS\u2019 EQUITY - Summary of Activities in Common Stock (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfStockholdersEquityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i1cfd0b0d8fbd448d89aa47c9ae3b2209_I20210219",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2433418 - Disclosure - SHAREHOLDERS\u2019 EQUITY - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail",
     "shortName": "SHAREHOLDERS\u2019 EQUITY - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i1cfd0b0d8fbd448d89aa47c9ae3b2209_I20210219",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2436419 - 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",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2437420 - 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",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iaec3f46826db4f818ca92b920242ca81_I20171231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1005006 - Statement - Consolidated Statements of Shareholders' Equity",
     "role": "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity",
     "shortName": "Consolidated Statements of Shareholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iaec3f46826db4f818ca92b920242ca81_I20171231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i8dfa0f180b1e4b7ebdd34ac1961839d2_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2438421 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i3fba9c501ecb48488641149b3f3174c2_I20181231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iec74e62741324a67999f82c1f1432c6a_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2439422 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iaec3f46826db4f818ca92b920242ca81_I20171231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2440423 - 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",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2441424 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2444425 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2445426 - 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": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseRenewalTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2448427 - Disclosure - LEASES - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/LEASESAdditionalInformationDetail",
     "shortName": "LEASES - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseRenewalTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2449428 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "tyl:ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2450429 - 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
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2451430 - 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",
       "td",
       "tr",
       "table",
       "div",
       "tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2101101 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
     "role": "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2452431 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2453432 - 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",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2455433 - 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": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "tyl:UnusualOrInfrequentItemOrBothExpenses",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2457434 - 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",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "tyl:UnusualOrInfrequentItemOrBothExpenses",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "tyl:NumberOfBusinessUnits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "business_unit",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2460435 - 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",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "tyl:NumberOfBusinessUnits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "business_unit",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2461436 - 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",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "tyl:SegmentReportingInformationCapitalExpenditures",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2462437 - 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": null
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2465438 - Disclosure - DISAGGREGATION OF REVENUE (Details)",
     "role": "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails",
     "shortName": "DISAGGREGATION OF REVENUE (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i3445a31732f24a65a862d5e005ac762c_D20200101-20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iae8dde606d6e4677a09ca8c41fb1e9e9_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "tyl:RevenueFromContractWithCustomerContractTerm",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2466439 - Disclosure - DISAGGREGATION OF REVENUE - Additional Information (Details)",
     "role": "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
     "shortName": "DISAGGREGATION OF REVENUE - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2469440 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "iec74e62741324a67999f82c1f1432c6a_I20191231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2106102 - Disclosure - ACQUISITIONS",
     "role": "http://www.tylertech.com/role/ACQUISITIONS",
     "shortName": "ACQUISITIONS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-7",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2470441 - 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",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-7",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CapitalizedContractCostNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2472442 - Disclosure - DEFERRED COMMISSIONS (Details)",
     "role": "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails",
     "shortName": "DEFERRED COMMISSIONS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CapitalizedContractCostNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:CommonStockParOrStatedValuePerShare",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "id293bf05103a494192d983b0a8bacaab_I20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2474443 - Disclosure - SUBSEQUENT EVENTS (Details)",
     "role": "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails",
     "shortName": "SUBSEQUENT EVENTS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i940e5f8f5aaf4e33a5b7c91c0c91720f_I20210209",
      "decimals": "-8",
      "lang": "en-US",
      "name": "us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2477444 - 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",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i9039777627ca4cea8d20c7eba646dcd9_D20201001-20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:GrossProfit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2108103 - Disclosure - PROPERTY AND EQUIPMENT, NET",
     "role": "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET",
     "shortName": "PROPERTY AND EQUIPMENT, NET",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl-20201231.htm",
      "contextRef": "i6230db87957f486bab11494ea334dfdc_D20200101-20201231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 73,
   "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]",
        "terseLabel": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r543",
      "r544",
      "r545"
     ],
     "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/2020-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/2020-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 YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2020-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 YYYY-MM-DD.",
        "label": "Document Period End Date",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r546"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r541"
     ],
     "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/2020-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, Street"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2020-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"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2020-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/2020-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"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r547"
     ],
     "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/2020-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/2020-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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r547"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r547"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r548"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r547"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r547"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r547"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r547"
     ],
     "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/2020-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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r543",
      "r544",
      "r545"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag",
        "terseLabel": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails",
      "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of each class"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r542"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name",
        "terseLabel": "Name of each exchange on which registered"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_ConsolidationItemsAxis": {
     "auth_ref": [
      "r157",
      "r170",
      "r171",
      "r172",
      "r173",
      "r175",
      "r177",
      "r181"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Axis]",
        "terseLabel": "Consolidation Items"
       }
      }
     },
     "localname": "ConsolidationItemsAxis",
     "nsuri": "http://fasb.org/srt/2020-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": [
      "r157",
      "r170",
      "r171",
      "r172",
      "r173",
      "r175",
      "r177",
      "r181"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Domain]",
        "terseLabel": "Consolidation Items",
        "verboseLabel": "Consolidation Items [Domain]"
       }
      }
     },
     "localname": "ConsolidationItemsDomain",
     "nsuri": "http://fasb.org/srt/2020-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_CumulativeEffectPeriodOfAdoptionAdjustmentMember": {
     "auth_ref": [
      "r106",
      "r113",
      "r200",
      "r362",
      "r363",
      "r364",
      "r396",
      "r397"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption, Adjustment [Member]",
        "terseLabel": "Cumulative Effect, Period of Adoption, Adjustment"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionAdjustmentMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CumulativeEffectPeriodOfAdoptionAxis": {
     "auth_ref": [
      "r106",
      "r113",
      "r200",
      "r362",
      "r363",
      "r364",
      "r396",
      "r397"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption [Axis]",
        "terseLabel": "Cumulative Effect, Period of Adoption [Axis]"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_CumulativeEffectPeriodOfAdoptionDomain": {
     "auth_ref": [
      "r106",
      "r113",
      "r200",
      "r362",
      "r363",
      "r364",
      "r396",
      "r397"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption [Domain]",
        "terseLabel": "Cumulative Effect, Period of Adoption [Domain]"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Domain]",
        "terseLabel": "Investment, Name [Domain]"
       }
      }
     },
     "localname": "EquityMethodInvesteeNameDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r187",
      "r295",
      "r300",
      "r518"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r316",
      "r319",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r516",
      "r519"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
      "http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail",
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail",
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail",
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r316",
      "r319",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r516",
      "r519"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail",
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail",
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r187",
      "r295",
      "r300",
      "r518"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r184",
      "r295",
      "r298",
      "r478",
      "r515",
      "r517"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r184",
      "r295",
      "r298",
      "r478",
      "r515",
      "r517"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r308",
      "r316",
      "r319",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r516",
      "r519"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
      "http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail",
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail",
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail",
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r308",
      "r316",
      "r319",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r516",
      "r519"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "verboseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
      "http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail",
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail",
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail",
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [
      "r317"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]",
        "terseLabel": "Scenario [Domain]"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "auth_ref": [
      "r195"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Axis]",
        "terseLabel": "Investment, Name [Axis]"
       }
      }
     },
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r253",
      "r317",
      "r469"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]",
        "terseLabel": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_AccountingPoliciesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accounting policies.",
        "label": "Accounting Policies [Line Items]",
        "terseLabel": "Accounting Policies"
       }
      }
     },
     "localname": "AccountingPoliciesLineItems",
     "nsuri": "http://www.tylertech.com/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"
     ],
     "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",
        "negatedLabel": "Amortization of customer and trade name intangibles",
        "terseLabel": "Amortization of customer and trade name intangibles"
       }
      }
     },
     "localname": "AmortizationofCustomerandTradeNamesIntangibleAssets",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"
     ],
     "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/20201231",
     "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/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_BFTRLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "BFTR, LLC",
        "label": "BFTR, LLC [Member]",
        "terseLabel": "BFTR, LLC"
       }
      }
     },
     "localname": "BFTRLLCMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_BusinessAcquisitionOptionConversionPrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Acquisition, Option Conversion Price",
        "label": "Business Acquisition, Option Conversion Price",
        "terseLabel": "Option conversion price (per share)"
       }
      }
     },
     "localname": "BusinessAcquisitionOptionConversionPrice",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "tyl_BusinessCombinationTerminationFee": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination, Termination Fee",
        "label": "Business Combination, Termination Fee",
        "terseLabel": "Termination fee"
       }
      }
     },
     "localname": "BusinessCombinationTerminationFee",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_CaseManagementBusinessProcessManagementDataAndInsightMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Case Management, Business Process Management, Data And Insight",
        "label": "Case Management, Business Process Management, Data And Insight [Member]",
        "terseLabel": "Case Management, Business Process Management, Data And Insight"
       }
      }
     },
     "localname": "CaseManagementBusinessProcessManagementDataAndInsightMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "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/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract With Customer, Liability, Including New Contract Revenue, Recognized",
        "label": "Contract With Customer, Liability, Including New Contract Revenue, Recognized",
        "negatedTerseLabel": "Recognition of deferred revenue"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityIncludingNewContractRevenueRecognized",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20201231",
     "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"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRollForward",
     "nsuri": "http://www.tylertech.com/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "tyl_CostOfSubscriptionsSoftwareServicesAndMaintenanceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cost of software services maintenance and subscriptions.",
        "label": "Cost Of Subscriptions, Software Services And Maintenance [Member]",
        "terseLabel": "Cost of subscriptions, software services and maintenance"
       }
      }
     },
     "localname": "CostOfSubscriptionsSoftwareServicesAndMaintenanceMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"
     ],
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_DataAndInsightMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Data And Insight",
        "label": "Data And Insight [Member]",
        "terseLabel": "Data And Insight"
       }
      }
     },
     "localname": "DataAndInsightMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "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/20201231",
     "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/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "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/20201231",
     "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_GoldmanSachsBankUSAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Goldman Sachs Bank USA",
        "label": "Goldman Sachs Bank USA [Member]",
        "terseLabel": "Goldman Sachs Bank USA"
       }
      }
     },
     "localname": "GoldmanSachsBankUSAMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_GoodwillAssessedForImpairment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Goodwill Assessed For Impairment",
        "label": "Goodwill Assessed For Impairment",
        "terseLabel": "Goodwill assessed for impairment"
       }
      }
     },
     "localname": "GoodwillAssessedForImpairment",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_MergerSubMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Merger Sub",
        "label": "Merger Sub [Member]",
        "terseLabel": "Merger Sub"
       }
      }
     },
     "localname": "MergerSubMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_NICIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "NIC, Inc",
        "label": "NIC, Inc [Member]",
        "terseLabel": "NIC, Inc"
       }
      }
     },
     "localname": "NICIncMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_NetOperatingLossCarryback": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail": {
       "order": 8.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net Operating Loss Carryback",
        "label": "Net Operating Loss Carryback",
        "negatedTerseLabel": "Net operating loss carryback",
        "terseLabel": "Net operating loss carryback"
       }
      }
     },
     "localname": "NetOperatingLossCarryback",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail",
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20201231",
     "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 (business units)"
       }
      }
     },
     "localname": "NumberOfBusinessUnits",
     "nsuri": "http://www.tylertech.com/20201231",
     "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/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "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/20201231",
     "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/20201231",
     "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 segment and corporate non-segment"
       }
      }
     },
     "localname": "OperatingSegmentsAndCorporateNonSegmentMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_PercentageOfTotalGoodwill": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of Total Goodwill",
        "label": "Percentage of Total Goodwill",
        "terseLabel": "Percentage of total goodwill"
       }
      }
     },
     "localname": "PercentageOfTotalGoodwill",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "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/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_RecurringRevenuePercentageOfTotalRevenue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Recurring Revenue Percentage of Total Revenue",
        "label": "Recurring Revenue Percentage of Total Revenue",
        "terseLabel": "Recurring revenue percentage of total revenue (percent)"
       }
      }
     },
     "localname": "RecurringRevenuePercentageOfTotalRevenue",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "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/20201231",
     "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/20201231",
     "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/20201231",
     "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 (in years)"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerContractTerm",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
      "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/20201231",
     "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/20201231",
     "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 (in years)"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTypicalContractTerm",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "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/20201231",
     "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 (in years)"
       }
      }
     },
     "localname": "SalesCommissionsAmortizationPeriod",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "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/20201231",
     "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/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_SeniorUnsecuredBridgeLoanFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Senior Unsecured Bridge Loan Facility",
        "label": "Senior Unsecured Bridge Loan Facility [Member]",
        "terseLabel": "Senior Unsecured Bridge Loan Facility"
       }
      }
     },
     "localname": "SeniorUnsecuredBridgeLoanFacilityMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/20201231",
     "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/20201231",
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "tyl_ShareBasedCompensationShareConversionRateShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation, Share Conversion Rate, Shares",
        "label": "Share-based Compensation, Share Conversion Rate, Shares",
        "terseLabel": "Share conversion rate (shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationShareConversionRateShares",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "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/20201231",
     "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/20201231",
     "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": "Subscriptions, software services and maintenance"
       }
      }
     },
     "localname": "SoftwareServicesMaintenanceandSubscriptionsMember",
     "nsuri": "http://www.tylertech.com/20201231",
     "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/20201231",
     "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/20201231",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail": {
       "order": 4.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)",
        "terseLabel": "Adjustments from the 2017 Tax Cuts and Jobs Act"
       }
      }
     },
     "localname": "TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_UnusualOrInfrequentItemOrBothExpenses": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unusual or Infrequent Item, or Both, Expenses",
        "label": "Unusual or Infrequent Item, or Both, Expenses",
        "terseLabel": "Unusual expenses"
       }
      }
     },
     "localname": "UnusualOrInfrequentItemOrBothExpenses",
     "nsuri": "http://www.tylertech.com/20201231",
     "presentation": [
      "http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]",
        "terseLabel": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingStandardsUpdateExtensibleList": {
     "auth_ref": [
      "r107",
      "r108",
      "r109",
      "r110",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r396",
      "r397",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates amendment to accounting standards.",
        "label": "Accounting Standards Update [Extensible List]",
        "terseLabel": "Accounting Standards Update"
       }
      }
     },
     "localname": "AccountingStandardsUpdateExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "extensibleListItemType"
    },
    "us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis": {
     "auth_ref": [
      "r51"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis": {
     "auth_ref": [
      "r51"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r40"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACCRUEDLIABILITIES"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r39"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNet": {
     "auth_ref": [
      "r25",
      "r501"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r4",
      "r25",
      "r189",
      "r190"
     ],
     "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 $9,255 in 2020 and $5,738 in 2019)"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetNoncurrent": {
     "auth_ref": [
      "r25",
      "r189",
      "r491",
      "r501"
     ],
     "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, 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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedInsuranceCurrentAndNoncurrent": {
     "auth_ref": [
      "r17",
      "r19",
      "r486",
      "r504"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees.",
        "label": "Accrued Insurance",
        "terseLabel": "Accrued insurance"
       }
      }
     },
     "localname": "AccruedInsuranceCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail": {
       "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail",
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Liabilities, Current [Abstract]",
        "terseLabel": "Accrued Liabilities, Current [Abstract]"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r37",
      "r240"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r28",
      "r55",
      "r56",
      "r57",
      "r505",
      "r527",
      "r531"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r54",
      "r57",
      "r58",
      "r103",
      "r104",
      "r105",
      "r428",
      "r522",
      "r523"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r225"
     ],
     "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",
        "verboseLabel": "Amortizable intangibles, Weighted Average Amortization Period"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r26"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r103",
      "r104",
      "r105",
      "r362",
      "r363",
      "r364"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "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 settlement"
       }
      }
     },
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r321",
      "r323",
      "r368",
      "r369"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r323",
      "r354",
      "r367"
     ],
     "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/2020-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 in net income"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpenseNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivable": {
     "auth_ref": [
      "r191",
      "r203",
      "r204",
      "r207"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r32",
      "r191",
      "r203"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": {
     "auth_ref": [
      "r206"
     ],
     "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": "Collections of accounts previously written off"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableRecoveries",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails"
     ],
     "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"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableRollforward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r87",
      "r223",
      "r231"
     ],
     "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",
        "verboseLabel": "Total amortization expense"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r131"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EARNINGSPERSHAREAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r97",
      "r165",
      "r172",
      "r179",
      "r196",
      "r425",
      "r429",
      "r434",
      "r483",
      "r503"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r6",
      "r8",
      "r53",
      "r97",
      "r196",
      "r425",
      "r429",
      "r434"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r325",
      "r356"
     ],
     "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/2020-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": [
      "r315",
      "r318"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail",
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r315",
      "r318",
      "r411",
      "r412"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail",
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "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"
       }
      }
     },
     "localname": "BusinessAcquisitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationAcquisitionRelatedCosts": {
     "auth_ref": [
      "r410"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r418",
      "r419",
      "r421"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiability": {
     "auth_ref": [
      "r417",
      "r420",
      "r423"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r424"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONS"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles": {
     "auth_ref": [
      "r414"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents the amount of any measurement period adjustment (as defined) realized during the reporting period to intangibles acquired in connection with a business combination for which the initial accounting was incomplete.",
        "label": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Intangibles",
        "terseLabel": "Adjustments related to intangibles"
       }
      }
     },
     "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r413"
     ],
     "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",
        "verboseLabel": "Net cash acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combinations [Abstract]",
        "terseLabel": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationsPolicy": {
     "auth_ref": [
      "r93",
      "r408"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareAmortization1": {
     "auth_ref": [
      "r537",
      "r539"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareGross": {
     "auth_ref": [
      "r538"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software.",
        "label": "Capitalized Computer Software, Gross",
        "terseLabel": "Capitalized software in progress"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareGross",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostAmortization": {
     "auth_ref": [
      "r211"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "CapitalizedContractCostLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CapitalizedContractCostNet": {
     "auth_ref": [
      "r210"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostTable": {
     "auth_ref": [
      "r210"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDCOMMISSIONSDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r3",
      "r34",
      "r89"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r12",
      "r90",
      "r93"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsAndShortTermInvestments": {
     "auth_ref": [
      "r34"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and effectively may withdraw funds at any time without prior notice or penalty. Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid Investments that are both readily convertible to known amounts of cash, and so near their maturity that they present minimal risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months. Short-term investments, exclusive of cash equivalents, generally consist of marketable securities intended to be sold within one year (or the normal operating cycle if longer) and may include trading securities, available-for-sale securities, or held-to-maturity securities (if maturing within one year), as applicable.",
        "label": "Cash, Cash Equivalents, and Short-term Investments",
        "terseLabel": "Cash and investments"
       }
      }
     },
     "localname": "CashCashEquivalentsAndShortTermInvestments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r83",
      "r89",
      "r92"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r83",
      "r435"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r95",
      "r97",
      "r121",
      "r125",
      "r126",
      "r128",
      "r130",
      "r141",
      "r142",
      "r143",
      "r196",
      "r434"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r47",
      "r252",
      "r492",
      "r509"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 4.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/2020-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]",
        "terseLabel": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r249",
      "r250",
      "r251",
      "r254"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIES"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r103",
      "r104"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r24"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r24"
     ],
     "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 (shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r24"
     ],
     "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 (shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r24"
     ],
     "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 \u00a0\u00a0 issued in 2020 and 2019"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock": {
     "auth_ref": [
      "r306",
      "r307",
      "r320"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EMPLOYEEBENEFITPLANS"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement Benefits [Abstract]",
        "terseLabel": "Retirement Benefits [Abstract]"
       }
      }
     },
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r146",
      "r497"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r93",
      "r427"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "auth_ref": [
      "r276"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.",
        "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]",
        "terseLabel": "Schedule of changes in deferred revenue"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r274",
      "r275",
      "r296"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r274",
      "r275",
      "r296"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityNoncurrent": {
     "auth_ref": [
      "r274",
      "r275",
      "r296"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CorporateNonSegmentMember": {
     "auth_ref": [
      "r170",
      "r171",
      "r172",
      "r173",
      "r175",
      "r181",
      "r183"
     ],
     "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/2020-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": [
      "r67",
      "r478"
     ],
     "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",
        "negatedTerseLabel": "Total cost of revenues",
        "terseLabel": "Total cost of revenues"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r98",
      "r393",
      "r400"
     ],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail": {
       "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r98",
      "r393",
      "r400",
      "r402"
     ],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail": {
       "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r98",
      "r393",
      "r400"
     ],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail": {
       "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerRelatedIntangibleAssetsMember": {
     "auth_ref": [
      "r415"
     ],
     "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/2020-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]",
        "terseLabel": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r259"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDIT"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r15",
      "r17",
      "r18",
      "r484",
      "r487",
      "r500"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "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 (in percent)"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentInterestRateEffectivePercentage": {
     "auth_ref": [
      "r45",
      "r258",
      "r443"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r45"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r46"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Debt Instrument, Term",
        "terseLabel": "Debt Instrument, Term"
       }
      }
     },
     "localname": "DebtInstrumentTerm",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r87",
      "r98",
      "r394",
      "r400",
      "r401",
      "r402"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail": {
       "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r20",
      "r21",
      "r383",
      "r485",
      "r499"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r374",
      "r375"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.",
        "label": "Deferred Income Tax Liabilities, Net",
        "terseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsDeferredIncome": {
     "auth_ref": [
      "r391",
      "r392"
     ],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from deferred income.",
        "label": "Deferred Tax Assets, Deferred Income",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "DeferredTaxAssetsDeferredIncome",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r384"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r386"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Assets, Net of Valuation Allowance [Abstract]",
        "terseLabel": "Deferred income tax assets:"
       }
      }
     },
     "localname": "DeferredTaxAssetsNetOfValuationAllowanceAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits": {
     "auth_ref": [
      "r391",
      "r392"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r385"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r375",
      "r386"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Liabilities, Gross [Abstract]",
        "terseLabel": "Deferred income tax liabilities:"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets": {
     "auth_ref": [
      "r391",
      "r392"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r391",
      "r392"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXScheduleofDeferredTaxAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome": {
     "auth_ref": [
      "r391",
      "r392"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "DefinedBenefitPlanDisclosureLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedContributionPlanCostRecognized": {
     "auth_ref": [
      "r314"
     ],
     "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/2020-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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r87",
      "r238"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r87",
      "r160"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [
      "r295",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSDeferredRevenueDetails",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEAdditionalInformationDetails",
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r295"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUETables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r371"
     ],
     "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/2020-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]",
        "terseLabel": "Share-based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock": {
     "auth_ref": [
      "r325",
      "r356"
     ],
     "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/2020-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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r64",
      "r111",
      "r112",
      "r113",
      "r114",
      "r115",
      "r119",
      "r121",
      "r128",
      "r129",
      "r130",
      "r134",
      "r135",
      "r495",
      "r512"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r64",
      "r111",
      "r112",
      "r113",
      "r114",
      "r115",
      "r121",
      "r128",
      "r129",
      "r130",
      "r134",
      "r135",
      "r495",
      "r512"
     ],
     "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/2020-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": [
      "r131",
      "r132",
      "r133",
      "r136"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EARNINGSPERSHARE"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount": {
     "auth_ref": [
      "r370",
      "r377"
     ],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail": {
       "order": 3.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 of share-based compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail": {
       "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail"
     ],
     "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"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r355"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "auth_ref": [
      "r355"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": {
     "auth_ref": [
      "r354"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [
      "r352"
     ],
     "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/2020-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]",
        "terseLabel": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r103",
      "r104",
      "r105",
      "r108",
      "r116",
      "r118",
      "r140",
      "r200",
      "r263",
      "r270",
      "r362",
      "r363",
      "r364",
      "r396",
      "r397",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r522",
      "r523",
      "r524"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue": {
     "auth_ref": [
      "r432"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount": {
     "auth_ref": [
      "r194"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r93",
      "r431",
      "r433"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r230"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, after Year Five",
        "terseLabel": "Thereafter",
        "verboseLabel": "Amortization expense, thereafter"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r232"
     ],
     "calculation": {
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One",
        "terseLabel": "2021",
        "verboseLabel": "Amortization expense, 2021"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r232"
     ],
     "calculation": {
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Five",
        "terseLabel": "2025",
        "verboseLabel": "Amortization expense, 2025"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r232"
     ],
     "calculation": {
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four",
        "terseLabel": "2024",
        "verboseLabel": "Amortization expense, 2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r232"
     ],
     "calculation": {
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three",
        "terseLabel": "2023",
        "verboseLabel": "Amortization expense, 2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r232"
     ],
     "calculation": {
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two",
        "terseLabel": "2022",
        "verboseLabel": "Amortization expense, 2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r224",
      "r226",
      "r230",
      "r233",
      "r479",
      "r480"
     ],
     "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/2020-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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]",
        "terseLabel": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r230",
      "r480"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r224",
      "r229"
     ],
     "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/2020-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_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r230",
      "r479"
     ],
     "calculation": {
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Net",
        "totalLabel": "Finite-lived intangible assets, net"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net [Abstract]",
        "terseLabel": "Gross carrying amount of other intangibles:"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r212",
      "r214",
      "r482"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 8.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/2020-01-31",
     "presentation": [
      "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": [
      "r215"
     ],
     "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/2020-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]",
        "terseLabel": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r235"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETS"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": {
     "auth_ref": [
      "r93",
      "r218",
      "r227"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r87",
      "r213",
      "r216",
      "r220"
     ],
     "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 loss"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillPurchaseAccountingAdjustments": {
     "auth_ref": [
      "r217",
      "r409"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from adjustments after acquisition date under purchase accounting 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, Purchase Accounting Adjustments",
        "terseLabel": "Adjustments related to goodwill",
        "verboseLabel": "Purchase price adjustments related to CHT acquisition"
       }
      }
     },
     "localname": "GoodwillPurchaseAccountingAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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"
       }
      }
     },
     "localname": "GoodwillRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r66",
      "r97",
      "r165",
      "r171",
      "r175",
      "r178",
      "r181",
      "r196",
      "r434"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies": {
     "auth_ref": [
      "r93",
      "r255"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill": {
     "auth_ref": [
      "r87",
      "r234"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": {
     "auth_ref": [
      "r87",
      "r237",
      "r242"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r93",
      "r236",
      "r245"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r62",
      "r165",
      "r171",
      "r175",
      "r178",
      "r181",
      "r481",
      "r493",
      "r496",
      "r513"
     ],
     "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",
        "terseLabel": "Income before income taxes",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedSummaryofSelectedFinancialInformationDetail",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]",
        "terseLabel": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r243"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r379"
     ],
     "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/2020-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/2020-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]",
        "terseLabel": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r378",
      "r381",
      "r388",
      "r398",
      "r403",
      "r405",
      "r406",
      "r407"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAX"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r98",
      "r117",
      "r118",
      "r163",
      "r376",
      "r399",
      "r404",
      "r514"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      },
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail": {
       "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 (benefit) provision"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/INCOMETAXIncomeTaxBenefitProvisiononIncomeFromOperationsDetail",
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r61",
      "r93",
      "r372",
      "r373",
      "r381",
      "r382",
      "r387",
      "r395",
      "r532"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReceivable": {
     "auth_ref": [
      "r33",
      "r498"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r377"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpense": {
     "auth_ref": [
      "r377"
     ],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail": {
       "order": 6.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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r377"
     ],
     "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 other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount",
        "terseLabel": "Other, net"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r377"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxCredits": {
     "auth_ref": [
      "r377"
     ],
     "calculation": {
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail": {
       "order": 5.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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXReconciliationofUSStatutoryIncomeTaxRatetoEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r91"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r86"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r86"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "auth_ref": [
      "r86"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "auth_ref": [
      "r86"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": {
     "auth_ref": [
      "r86"
     ],
     "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/2020-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 \u00a0\u00a0 acquired companies:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r86"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r122",
      "r123",
      "r124",
      "r130"
     ],
     "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": "Share-based awards (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_InsuranceRecoveries": {
     "auth_ref": [
      "r68"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount recovered from insurance. These recoveries reduce costs and losses that are reported as a separate line item under operating expenses.",
        "label": "Insurance Recoveries",
        "terseLabel": "Insurance recoveries"
       }
      }
     },
     "localname": "InsuranceRecoveries",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/COMMITMENTSANDCONTINGENCIESAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r222",
      "r228"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 2.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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r82",
      "r84",
      "r91"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestReceivable": {
     "auth_ref": [
      "r52"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of interest earned but not received. Also called accrued interest or accrued interest receivable.",
        "label": "Interest Receivable",
        "terseLabel": "Interest receivable"
       }
      }
     },
     "localname": "InterestReceivable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntersegmentEliminationMember": {
     "auth_ref": [
      "r157",
      "r170",
      "r171",
      "r172",
      "r173",
      "r175",
      "r177",
      "r181"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Investments": {
     "auth_ref": [
      "r510"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 3.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 investments.",
        "label": "Investments",
        "terseLabel": "Non-current investments"
       }
      }
     },
     "localname": "Investments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r298"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r459",
      "r461"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail",
      "http://www.tylertech.com/role/LEASESScheduleofleasecostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r459"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]",
        "terseLabel": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-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/2020-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_LesseeLeaseDescriptionLineItems": {
     "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": "Lessee, Lease, Description [Line Items]",
        "verboseLabel": "Lessee, Lease"
       }
      }
     },
     "localname": "LesseeLeaseDescriptionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeaseDescriptionTable": {
     "auth_ref": [
      "r451"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about lessee's leases.",
        "label": "Lessee, Lease, Description [Table]",
        "terseLabel": "Lessee, Lease, Description [Table]"
       }
      }
     },
     "localname": "LesseeLeaseDescriptionTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "auth_ref": [
      "r449"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r460"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1": {
       "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 payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1": {
       "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 payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "terseLabel": "2021"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1": {
       "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 payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1": {
       "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 payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1": {
       "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 payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails_1": {
       "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 payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r460"
     ],
     "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 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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseRenewalTerm": {
     "auth_ref": [
      "r450"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LesseeOperatingLeaseTermOfContract": {
     "auth_ref": [
      "r450"
     ],
     "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 (in years)"
       }
      }
     },
     "localname": "LesseeOperatingLeaseTermOfContract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r462"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASES"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsFiscalYearMaturityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessor, Operating Lease, Payments, Fiscal Year Maturity [Abstract]",
        "terseLabel": "Year ending December 31,"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsFiscalYearMaturityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceived": {
     "auth_ref": [
      "r463"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears": {
     "auth_ref": [
      "r463"
     ],
     "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 payment to be received by lessor for operating lease in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessor, Operating Lease, Payment to be Received, Year Five",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedFiveYears",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears": {
     "auth_ref": [
      "r463"
     ],
     "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 payment to be received by lessor for operating lease in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessor, Operating Lease, Payment to be Received, Year Four",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedFourYears",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths": {
     "auth_ref": [
      "r463"
     ],
     "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 payment to be received by lessor for operating lease in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessor, Operating Lease, Payment to be Received, Year One",
        "terseLabel": "2021"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter": {
     "auth_ref": [
      "r463"
     ],
     "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 payment to be received by lessor for operating lease after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessor, Operating Lease, Payment to be Received, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedThereafter",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears": {
     "auth_ref": [
      "r463"
     ],
     "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 payment to be received by lessor for operating lease in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessor, Operating Lease, Payment to be Received, Year Three",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedThreeYears",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears": {
     "auth_ref": [
      "r463"
     ],
     "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 payment to be received by lessor for operating lease in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessor, Operating Lease, Payment to be Received, Year Two",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedTwoYears",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleoffutureminimumoperatingrentalincomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeaseRenewalTerm": {
     "auth_ref": [
      "r464"
     ],
     "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 (in years)"
       }
      }
     },
     "localname": "LessorOperatingLeaseRenewalTerm",
     "nsuri": "http://fasb.org/us-gaap/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LettersOfCreditOutstandingAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.",
        "label": "Letters of Credit Outstanding, Amount",
        "terseLabel": "Letter of credit outstanding"
       }
      }
     },
     "localname": "LettersOfCreditOutstandingAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities [Abstract]",
        "terseLabel": "Liabilities:"
       }
      }
     },
     "localname": "LiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r31",
      "r97",
      "r196",
      "r434",
      "r488",
      "r507"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r44",
      "r97",
      "r196",
      "r426",
      "r429",
      "r430",
      "r434"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LicenseMember": {
     "auth_ref": [
      "r298"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "auth_ref": [
      "r41",
      "r99"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit.",
        "label": "Lender Name [Axis]",
        "terseLabel": "Lender Name [Axis]"
       }
      }
     },
     "localname": "LineOfCreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity": {
     "auth_ref": [
      "r41"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any amounts currently outstanding under the facility.",
        "label": "Line of Credit Facility, Current Borrowing Capacity",
        "terseLabel": "Long-term line of credit"
       }
      }
     },
     "localname": "LineOfCreditFacilityCurrentBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "auth_ref": [
      "r41"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility.",
        "label": "Line of Credit Facility, Lender [Domain]",
        "terseLabel": "Line of Credit Facility, Lender [Domain]"
       }
      }
     },
     "localname": "LineOfCreditFacilityLenderDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r41"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r41"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "auth_ref": [
      "r41",
      "r99"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermLineOfCredit": {
     "auth_ref": [
      "r46",
      "r256",
      "r257"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MaintenanceMember": {
     "auth_ref": [
      "r298"
     ],
     "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/2020-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_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r83"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r83"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r83",
      "r85",
      "r88"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r2",
      "r59",
      "r60",
      "r63",
      "r88",
      "r97",
      "r107",
      "r111",
      "r112",
      "r113",
      "r114",
      "r117",
      "r118",
      "r127",
      "r165",
      "r171",
      "r175",
      "r178",
      "r181",
      "r196",
      "r434",
      "r494",
      "r511"
     ],
     "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/2020-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_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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [
      "r153"
     ],
     "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 (segment)"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r165",
      "r171",
      "r175",
      "r178",
      "r181"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 2.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/2020-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": [
      "r452",
      "r461"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleofleasecostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLeaseIncomeTableTextBlock": {
     "auth_ref": [
      "r138",
      "r465"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payment, Due [Abstract]",
        "terseLabel": "Year ending December 31,"
       }
      }
     },
     "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r447"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails": {
       "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESMaturityofleaseliabilitiesDetails",
      "http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r447"
     ],
     "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",
        "terseLabel": "Operating leases, short-term",
        "verboseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r447"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 6.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",
        "terseLabel": "Operating leases, long-term",
        "verboseLabel": "Operating lease liabilities, long-term"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r448",
      "r455"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r446"
     ],
     "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 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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/LEASESScheduleofleasesassetsandliabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r458",
      "r461"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r457",
      "r461"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleofotherinformationrelatedtoleasesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLeasesOfLessorDisclosureTextBlock": {
     "auth_ref": [
      "r444",
      "r445",
      "r466"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASES"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r389"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "auth_ref": [
      "r390"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingSegmentsMember": {
     "auth_ref": [
      "r170",
      "r171",
      "r172",
      "r173",
      "r175",
      "r181"
     ],
     "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/2020-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": [
      "r9",
      "r10",
      "r11",
      "r43"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail": {
       "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACCRUEDLIABILITIESDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsCurrent": {
     "auth_ref": [
      "r52"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r38"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other Assets, Noncurrent",
        "terseLabel": "Other non-current assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 1.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, net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date.",
        "label": "Payment for Contingent Consideration Liability, Financing Activities",
        "negatedTerseLabel": "Payment of contingent consideration",
        "terseLabel": "Payment for contingent consideration"
       }
      }
     },
     "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail",
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForCapitalImprovements": {
     "auth_ref": [
      "r76"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETAdditionalInformationDetail",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": {
     "auth_ref": [
      "r73",
      "r77",
      "r101"
     ],
     "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": "Decrease (increase) in other"
       }
      }
     },
     "localname": "PaymentsForProceedsFromOtherInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r79"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForSoftware": {
     "auth_ref": [
      "r76"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "auth_ref": [
      "r75",
      "r422"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r75"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireEquityMethodInvestments": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the purchase of or advances to an equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence.",
        "label": "Payments to Acquire Equity Method Investments",
        "negatedTerseLabel": "Purchase of equity investment in common shares"
       }
      }
     },
     "localname": "PaymentsToAcquireEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireHeldToMaturitySecurities": {
     "auth_ref": [
      "r74",
      "r193"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireMarketableSecurities": {
     "auth_ref": [
      "r193"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r76"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PerformanceSharesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement awarded for meeting performance target.",
        "label": "Performance Shares [Member]",
        "terseLabel": "Performance Shares"
       }
      }
     },
     "localname": "PerformanceSharesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r23"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r23"
     ],
     "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 (shares)"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r23"
     ],
     "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 (shares)"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r23"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "auth_ref": [
      "r5",
      "r7",
      "r208",
      "r209"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r0"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.",
        "label": "Reclassification, Comparability Adjustment [Policy Text Block]",
        "terseLabel": "Reclassifications"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfEquityMethodInvestments": {
     "auth_ref": [
      "r72"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the sale of equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence.",
        "label": "Proceeds from Sale of Equity Method Investments",
        "terseLabel": "Proceeds from the sale of equity investment in preferred shares"
       }
      }
     },
     "localname": "ProceedsFromSaleOfEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "auth_ref": [
      "r78",
      "r357"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockPlans": {
     "auth_ref": [
      "r78"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductMember": {
     "auth_ref": [
      "r298"
     ],
     "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/2020-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]",
        "terseLabel": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r37",
      "r241"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Long-Lived Tangible Asset [Axis]",
        "terseLabel": "Property Plant And Equipment By Type"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r246",
      "r533",
      "r534",
      "r535"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "terseLabel": "PROPERTY AND EQUIPMENT, NET"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNET"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r36",
      "r239"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r13",
      "r14",
      "r241",
      "r508"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 4.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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r35",
      "r93",
      "r241",
      "r533",
      "r534"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]",
        "terseLabel": "Property and Equipment, Net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r13",
      "r241"
     ],
     "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"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r13",
      "r239"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.",
        "label": "Long-Lived Tangible Asset [Domain]",
        "terseLabel": "Property Plant And Equipment Type"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-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": "Useful Lives (years)"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r65",
      "r205"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAllowancesforcreditlossrollforwardDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_QuarterlyFinancialInformationDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Quarterly Financial Information Disclosure [Abstract]",
        "terseLabel": "Quarterly Financial Information Disclosure [Abstract]"
       }
      }
     },
     "localname": "QuarterlyFinancialInformationDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_QuarterlyFinancialInformationTextBlock": {
     "auth_ref": [
      "r139"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunaudited"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReceivableTypeDomain": {
     "auth_ref": [
      "r51"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable": {
     "auth_ref": [
      "r171",
      "r175"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r171",
      "r175"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RentalIncomeNonoperating": {
     "auth_ref": [
      "r70"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfLinesOfCredit": {
     "auth_ref": [
      "r80",
      "r100"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReportingUnitAxis": {
     "auth_ref": [
      "r219",
      "r220"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by reporting unit.",
        "label": "Reporting Unit [Axis]",
        "terseLabel": "Reporting Unit [Axis]"
       }
      }
     },
     "localname": "ReportingUnitAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReportingUnitDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Level of reporting at which goodwill is tested for impairment.",
        "label": "Reporting Unit [Domain]",
        "terseLabel": "Reporting Unit [Domain]"
       }
      }
     },
     "localname": "ReportingUnitDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost": {
     "auth_ref": [
      "r536"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r27",
      "r270",
      "r365",
      "r506",
      "r526",
      "r531"
     ],
     "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)",
        "terseLabel": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r103",
      "r104",
      "r105",
      "r108",
      "r116",
      "r118",
      "r200",
      "r362",
      "r363",
      "r364",
      "r396",
      "r397",
      "r522",
      "r524"
     ],
     "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/2020-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]",
        "terseLabel": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r156",
      "r157",
      "r170",
      "r176",
      "r177",
      "r184",
      "r185",
      "r187",
      "r294",
      "r295",
      "r478"
     ],
     "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/2020-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": [
      "r94",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r305"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r284",
      "r285",
      "r297",
      "r305"
     ],
     "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/2020-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": [
      "r282"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "auth_ref": [
      "r283"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": {
     "auth_ref": [
      "r283"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DEFERREDREVENUEANDPERFORMANCEOBLIGATIONSNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationPercentage": {
     "auth_ref": [
      "r283"
     ],
     "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/2020-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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r456",
      "r461"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScenarioPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The scenario under which facts represent plans as distinct from actual.",
        "label": "Scenario, Plan [Member]",
        "terseLabel": "Plan"
       }
      }
     },
     "localname": "ScenarioPlanMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "auth_ref": [
      "r51"
     ],
     "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": "Allowance for credit loss rollfoward"
       }
      }
     },
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACCRUEDLIABILITIESTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable": {
     "auth_ref": [
      "r224"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": {
     "auth_ref": [
      "r224"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r411",
      "r412"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ACQUISITIONSNarrativeDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r395"
     ],
     "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": "Schedule of income tax (benefit) provision on income from operations"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r386"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r309",
      "r310",
      "r311",
      "r312",
      "r313"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EMPLOYEEBENEFITPLANSAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r130"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EARNINGSPERSHARETables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r377"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "auth_ref": [
      "r323",
      "r353",
      "r367"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "auth_ref": [
      "r323",
      "r353",
      "r367"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r224",
      "r229",
      "r479"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSAdditionalInformationDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r224",
      "r229"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "auth_ref": [
      "r218",
      "r221"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r218",
      "r221"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r37",
      "r241"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock": {
     "auth_ref": [
      "r137"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/QUARTERLYFINANCIALINFORMATIONunauditedTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "auth_ref": [
      "r165",
      "r168",
      "r174",
      "r218"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONScheduleofSegmentRevenuesandOperationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r165",
      "r168",
      "r174",
      "r218"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r325",
      "r356"
     ],
     "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/2020-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": [
      "r331",
      "r342",
      "r345"
     ],
     "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": "Summary of stock option activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r347"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfStockByClassTable": {
     "auth_ref": [
      "r48",
      "r95",
      "r141",
      "r142",
      "r260",
      "r261",
      "r262",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfStockholdersEquityTableTextBlock": {
     "auth_ref": [
      "r263"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r229"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r152",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r166",
      "r167",
      "r170",
      "r171",
      "r172",
      "r173",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r181",
      "r187",
      "r515"
     ],
     "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/2020-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]",
        "terseLabel": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r152",
      "r154",
      "r155",
      "r165",
      "r169",
      "r175",
      "r179",
      "r180",
      "r181",
      "r182",
      "r184",
      "r186",
      "r187",
      "r188"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "SegmentReportingInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-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"
       }
      }
     },
     "localname": "SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SEGMENTANDRELATEDINFORMATIONReconciliationofOperatingIncomefromSegmentstoConsolidatedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r69"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "auth_ref": [],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofShareBasedCompensationExpenseRelatedtoShareBasedAwardsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember": {
     "auth_ref": [
      "r412"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofChangesinCarryingAmountofGoodwillDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r86"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r326"
     ],
     "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 (in years)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r337"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue": {
     "auth_ref": [
      "r341"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r339"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue": {
     "auth_ref": [
      "r339"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue": {
     "auth_ref": [
      "r338"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r338"
     ],
     "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 (in shares)",
        "periodStartLabel": "Beginning balance (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r340"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue": {
     "auth_ref": [
      "r340"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONRSUandPSUActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r350"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r351"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate": {
     "auth_ref": [
      "r349"
     ],
     "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/2020-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"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-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": [
      "r356"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r328"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r356"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r334"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r334"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r344"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r337"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": {
     "auth_ref": [
      "r335"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r343"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONOtherInformationPertainingtoOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r356"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r333",
      "r356"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r332"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r322",
      "r329"
     ],
     "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/2020-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/2020-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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r93",
      "r325",
      "r330"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r327"
     ],
     "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 (in years)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r348",
      "r366"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONSummaryofWeightedAverageAssumptionsUsedforOptionsGrantedDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "auth_ref": [
      "r356"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r356"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r346"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SharesIssued": {
     "auth_ref": [
      "r263"
     ],
     "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/2020-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 settlement (in shares)"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermDebtTypeAxis": {
     "auth_ref": [
      "r42"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShortTermDebtTypeDomain": {
     "auth_ref": [
      "r39"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShortTermInvestments": {
     "auth_ref": [
      "r16",
      "r489",
      "r490",
      "r502"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r453",
      "r461"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LEASESScheduleofleasecostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r102"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy": {
     "auth_ref": [
      "r93",
      "r538"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r1",
      "r152",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r166",
      "r167",
      "r170",
      "r171",
      "r172",
      "r173",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r181",
      "r187",
      "r218",
      "r244",
      "r247",
      "r248",
      "r515"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]",
        "verboseLabel": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-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": [
      "r22",
      "r23",
      "r24",
      "r95",
      "r97",
      "r121",
      "r125",
      "r126",
      "r128",
      "r130",
      "r141",
      "r142",
      "r143",
      "r196",
      "r263",
      "r434"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r50",
      "r103",
      "r104",
      "r105",
      "r108",
      "r116",
      "r118",
      "r140",
      "r200",
      "r263",
      "r270",
      "r362",
      "r363",
      "r364",
      "r396",
      "r397",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r522",
      "r523",
      "r524"
     ],
     "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/2020-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/2020-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]",
        "terseLabel": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]",
        "terseLabel": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]",
        "terseLabel": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r103",
      "r104",
      "r105",
      "r140",
      "r478"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": {
     "auth_ref": [
      "r23",
      "r24",
      "r263",
      "r270"
     ],
     "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 (in shares)",
        "verboseLabel": "Employee stock plan purchases (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity",
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "auth_ref": [
      "r23",
      "r24",
      "r263",
      "r270"
     ],
     "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/ Exercise of stock options (in shares)",
        "verboseLabel": "Stock option exercises (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity",
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r23",
      "r24",
      "r263",
      "r270",
      "r336"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": {
     "auth_ref": [
      "r23",
      "r24",
      "r263",
      "r270"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity",
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "auth_ref": [
      "r23",
      "r24",
      "r270",
      "r324",
      "r343"
     ],
     "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",
        "verboseLabel": "Issuance/ Exercise of stock options"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-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 (in shares)"
       }
      }
     },
     "localname": "StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r24",
      "r29",
      "r30",
      "r97",
      "r192",
      "r196",
      "r434"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 5.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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r96",
      "r270",
      "r273"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITY"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubscriptionAndCirculationMember": {
     "auth_ref": [
      "r298"
     ],
     "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/2020-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_SubsequentEventLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.",
        "label": "Subsequent Event [Line Items]",
        "terseLabel": "Subsequent Event"
       }
      }
     },
     "localname": "SubsequentEventLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r442",
      "r468"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTable": {
     "auth_ref": [
      "r442",
      "r468"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discloses pertinent information about one or more 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.",
        "label": "Subsequent Event [Table]",
        "terseLabel": "Subsequent Event [Table]"
       }
      }
     },
     "localname": "SubsequentEventTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r442",
      "r468"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r442",
      "r468"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYAdditionalInformationDetail",
      "http://www.tylertech.com/role/SUBSEQUENTEVENTSDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]",
        "terseLabel": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r467",
      "r470"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxCreditCarryforwardAmount": {
     "auth_ref": [
      "r389"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TechnologyServiceMember": {
     "auth_ref": [
      "r298"
     ],
     "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/2020-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": [
      "r295",
      "r303"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceDomain": {
     "auth_ref": [
      "r295",
      "r303"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TradeNamesMember": {
     "auth_ref": [
      "r416"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofAllocationofAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GOODWILLANDOTHERINTANGIBLEASSETSSummaryofOtherIntangibleAssetsandRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransferredAtPointInTimeMember": {
     "auth_ref": [
      "r303"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DISAGGREGATIONOFREVENUEDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransferredOverTimeMember": {
     "auth_ref": [
      "r303"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PROPERTYANDEQUIPMENTNETSummaryofPropertyandEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r49",
      "r271"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockShares": {
     "auth_ref": [
      "r49",
      "r271"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "auth_ref": [
      "r24",
      "r263",
      "r270"
     ],
     "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 (in shares)",
        "negatedTerseLabel": "Purchases of common stock (in shares)"
       }
      }
     },
     "localname": "TreasuryStockSharesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity",
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r49",
      "r271",
      "r272"
     ],
     "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; 7,608,627 and 8,839,352 shares in 2020 and 2019, respectively"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TreasuryStockValueAcquiredCostMethod": {
     "auth_ref": [
      "r263",
      "r270",
      "r271"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsofShareholdersEquity",
      "http://www.tylertech.com/role/SHAREHOLDERSEQUITYSummaryofActivitiesinCommonStockDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease": {
     "auth_ref": [
      "r380"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/INCOMETAXAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r144",
      "r145",
      "r147",
      "r148",
      "r149",
      "r150",
      "r151"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_VariableLeaseCost": {
     "auth_ref": [
      "r454",
      "r461"
     ],
     "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/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/REVOLVINGLINEOFCREDITDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r120",
      "r130"
     ],
     "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",
        "totalLabel": "Denominator for diluted earnings per share \u00a0\u00a0 - Adjusted weighted-average shares",
        "verboseLabel": "Shares used in computing diluted \u00a0\u00a0 earnings per share (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2020-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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SHAREBASEDCOMPENSATIONStockOptionActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r119",
      "r130"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EARNINGSPERSHAREComputationofBasicEarningsandDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 8
  }
 },
 "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": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6935-107765"
  },
  "r100": {
   "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=120395691&loc=d3e23780-122690"
  },
  "r101": {
   "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=120395691&loc=d3e24072-122690"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21914-107793"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21930-107793"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21711-107793"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21728-107793"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e7018-107765"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  },
  "r113": {
   "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"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22595-107794"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22644-107794"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22644-107794"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22658-107794"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22663-107794"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1448-109256"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1505-109256"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1252-109256"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1707-109256"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1757-109256"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1500-109256"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1278-109256"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e2626-109256"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=SL5780133-109256"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=SL5780133-109256"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1337-109256"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r130": {
   "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"
  },
  "r131": {
   "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"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3630-109257"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=120380238&loc=d3e3842-109258"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=120380238&loc=d3e4984-109258"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "http://asc.fasb.org/topic&trid=2144383"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=121640914&loc=d3e1280-108306"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=121640914&loc=SL77927221-108306"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "270",
   "URI": "http://asc.fasb.org/topic&trid=2126967"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6828210&loc=d3e70191-108054"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6828210&loc=d3e70229-108054"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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"
  },
  "r147": {
   "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"
  },
  "r148": {
   "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"
  },
  "r149": {
   "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"
  },
  "r15": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8657-108599"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8672-108599"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8721-108599"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8721-108599"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r16": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8844-108599"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8924-108599"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8981-108599"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8475-108599"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9031-108599"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9054-108599"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4428-111522"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(24))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4531-111522"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=d3e5074-111524"
  },
  "r192": {
   "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"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=121553693&loc=d3e26853-111562"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "321",
   "URI": "http://asc.fasb.org/extlink&oid=120269885&loc=SL75117539-209714"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "r20": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(4)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121599878&loc=SL82895884-210446"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447"
  },
  "r208": {
   "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"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320"
  },
  "r21": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "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"
  },
  "r213": {
   "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"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=SL108378252-109267"
  },
  "r22": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "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"
  },
  "r229": {
   "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"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r230": {
   "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"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r236": {
   "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"
  },
  "r237": {
   "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"
  },
  "r238": {
   "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"
  },
  "r239": {
   "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"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=121559207&loc=d3e25336-109308"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=121559207&loc=d3e25336-109308"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=120520924&loc=SL6036836-161870"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130531-203044"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130532-203044"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130558-203045"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130561-203045"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130563-203045"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130563-203045"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130564-203045"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130566-203045"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130566-203045"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130566-203045"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130566-203045"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130543-203045"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130545-203045"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130550-203045"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "http://asc.fasb.org/topic&trid=49130388"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "710",
   "URI": "http://asc.fasb.org/topic&trid=2127225"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "712",
   "URI": "http://asc.fasb.org/topic&trid=2197446"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r309": {
   "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"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "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"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "http://asc.fasb.org/topic&trid=2235017"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121326096&loc=d3e4534-113899"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r332": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r337": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r338": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r339": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r340": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r341": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=SL79508275-113901"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120383193&loc=d3e11149-113907"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120383193&loc=d3e11178-113907"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "740",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120384911&loc=d3e23163-113944"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=120406818&loc=d3e32247-109318"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=120406818&loc=d3e32280-109318"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=120406818&loc=d3e31917-109318"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=120406818&loc=d3e31931-109318"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32672-109319"
  },
  "r377": {
   "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"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32705-109319"
  },
  "r379": {
   "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"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.17)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32857-109319"
  },
  "r389": {
   "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"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r390": {
   "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"
  },
  "r391": {
   "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"
  },
  "r392": {
   "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"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817"
  },
  "r399": {
   "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"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r40": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r400": {
   "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"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330215-122817"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=120385591&loc=d3e38679-109324"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r408": {
   "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"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116868678&loc=d3e961-128460"
  },
  "r41": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "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"
  },
  "r411": {
   "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"
  },
  "r412": {
   "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"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121647850&loc=d3e4845-128472"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121647850&loc=SL65897772-128472"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121598580&loc=d3e5227-128473"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121598580&loc=d3e5263-128473"
  },
  "r417": {
   "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"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r42": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r420": {
   "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"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "http://asc.fasb.org/topic&trid=2303972"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r427": {
   "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"
  },
  "r428": {
   "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"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=121559654&loc=d3e5710-111685"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=121559654&loc=d3e5710-111685"
  },
  "r431": {
   "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"
  },
  "r432": {
   "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"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13279-108611"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=75031198&loc=d3e14064-108612"
  },
  "r435": {
   "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"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=119993939&loc=d3e28551-108399"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "Note 1",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=121580752&loc=d3e38371-112697"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "Note 3",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=121580752&loc=d3e38371-112697"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918627-209977"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918627-209977"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918643-209977"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918666-209980"
  },
  "r45": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918673-209980"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918673-209980"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918701-209980"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121568110&loc=SL77918982-209971"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121576215&loc=SL77919396-209981"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121576215&loc=SL77919359-209981"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121576215&loc=SL77919372-209981"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888252"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r468": {
   "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"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "http://asc.fasb.org/extlink&oid=119991564&loc=SL119991595-234733"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959"
  },
  "r48": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r480": {
   "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"
  },
  "r481": {
   "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"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r484": {
   "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=120398452&loc=d3e534808-122878"
  },
  "r485": {
   "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=120398452&loc=d3e534808-122878"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(5))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r489": {
   "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=120398452&loc=d3e534808-122878"
  },
  "r49": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r490": {
   "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=120398452&loc=d3e534808-122878"
  },
  "r491": {
   "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=120398452&loc=d3e534808-122878"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r494": {
   "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=120399700&loc=SL114874048-224260"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884"
  },
  "r497": {
   "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"
  },
  "r498": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r499": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r500": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r501": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r502": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(a))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3,4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.1(h))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r511": {
   "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=120400993&loc=SL114874131-224263"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r515": {
   "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"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121643868&loc=SL117782755-158439"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117819544-158441"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.8)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r532": {
   "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"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916"
  },
  "r536": {
   "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"
  },
  "r537": {
   "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"
  },
  "r538": {
   "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"
  },
  "r539": {
   "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"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669646-108580"
  },
  "r540": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r541": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r542": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r543": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310"
  },
  "r544": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f"
  },
  "r545": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f"
  },
  "r546": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r547": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r548": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e637-108580"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e681-108580"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669686-108580"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL34724394-108580"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669619-108580"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669625-108580"
  },
  "r61": {
   "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"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r63": {
   "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=120395209&loc=SL114868664-224227"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.3)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r69": {
   "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=120395209&loc=SL114868664-224227"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6787-107765"
  },
  "r70": {
   "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=120395209&loc=SL114868664-224227"
  },
  "r71": {
   "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=120395209&loc=SL114868664-224227"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3179-108585"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3179-108585"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3213-108585"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3213-108585"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3213-108585"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3213-108585"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3255-108585"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6801-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3367-108585"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3521-108585"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3536-108585"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3536-108585"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3044-108585"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6911-107765"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4273-108586"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4297-108586"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=SL98516268-108586"
  },
  "r93": {
   "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"
  },
  "r94": {
   "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"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r99": {
   "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=120395691&loc=d3e23780-122690"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>103
<FILENAME>0000860731-21-000014-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000860731-21-000014-xbrl.zip
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
M$FKTT=3%FRE8K[*%JWY[6=*JOF@DMH^[;[OI1N3IE_WSNC6L/CGU5V;G8D[
MG4Z'0L#_8"G:) 8S&UVL:\(6E]?KGU<=<7V0VV=31&\>SMLO26:]M3'*H(1W
MD!1$:8OB8-)&RA3\+>[]][,H/A\-^?=.SI[W6$TP6#5X/)Z. YU].9#Z# <W
MH%MO)K\S"207B@0;( @,P@7!X:*4Y(HJ8O%7XBP4,C-<PY(2>RY"%TU4(*W
M9##&(%(N6NO8A*7+/P31=,#EI#M5*WS.,\(Q';)XV>H?CX9O+[*>5DM<?F@D
MWH%-,B6.7;A[1^[HR9#QCKN[%LXV(5VN$0Q:WA4P6LE 0JA4-Q;Q":,149 M
MA3TWL%M8$K\] ^(LBC\O8(N1)2IE$V@!7DEO3"C&:B,4-J#":",0F^5:U6A9
M=WF"+ E$AJA<= I$@,2!;&J"G[_YQ4G7)D4M[W$RH='[$_CDYR>C=,@$R5?[
MSB^CJ7:N6"\21U51 WKA29DDHI<"LA>E"8N7Y@+VRN-_N@;.BZ"SSN""AY!*
MS(I*T9(=20G.-Z#>SZ*;BAMQ^Q*MB3H5GYV$D"5F<AZ2)I-\B#HND=N?.VPS
M]/W%^Q0ADB]2 V01<LF@0IV<L#Y9L6Q&^^KD)R>C07=R,J)I7M)I?;64]0*$
MUZ8.UD@O'3A;D$34: I1J74#&I!'N8"PWH@!C5A[HF03FBW(C$'F))PS,;J
M2KDE,:#S0FJ6XZ(4G$RU0DL1H)T/8(IWB;$+J%UITHJ8'X)L=X2#<5V8.JT'
M]?[4932;0862LXQ>NPRVE* U):,2 -0MYI9MNNC6D+VA7.X W-M(D;,0E?'H
MR)(1KC@EV7@NF>6< U@S%9RBN%@B$7G6F\6;4DHT2NM 69LF;4%\-:_^\N(2
MXP\1PB;_X-'QJ#NF6PD'9K?3GM/1"?*VU$R)0C*8:@DQ)Q!H?:-VL_U[=-X7
M"N.>MHNG38%&4DA&DW8L-4 HE'H*C/2Q[IGBEV9!RJ\M&&M:-Y[_TAC &*G.
M\/M0=QB':',F*5QB>>OS186R%;&:98'FSRKCA:Y+Z"1D!"\PY$@*@@ZZN"(1
M5JQJ+K:*@E680QU. NEL,(;5')JZ*!VL;]*6K7^+[?O>S,U"X^VR-<C=M]U\
M@KW>V5:_SRTWZF+O*U__Y04>*P?U><B@47F9K8ZFL"GQ$8-(19"6S#DEW(IN
M*[<UPTELX/B4PQV!P(+;DZUC>4@6<P0C5EQ;-L2UR*2*S2I(#1$IANQ*EH)*
M2(I]V^*/'BV(H[B1X2(!J*R* "8K4"1B"I2D229RN)+0+ 4ZMSD@,3MH9%3.
M!RL,>0M6EFBDCZ+NKA)<#*$)R\9N-#&X:?UW_K,N.5"$)*UR00!3R6OPA4VS
M)V6=0K]B5(-LSOSI5 OY1I\EQPP&2D9,BHU3(?8C(1C;@.W$%L0RW$S!GR"]
M-RD[ 1J4AZA%<1FD]:F DPTH8K8(O>QFJNY(H,PX)+:Y $D'5_M1"LXZ)UD?
M+SXT3[J#[H2>==]2WAIP,QS4"DCKXS%-QK^?M?%H.)K63/JL6-+)>#+LTVB'
MION:?O[%AH!'27E/ "X)#74[TU1D1!==$2R;J0'KB)H&W@PU-46M(U A9/"<
M-@&B @N&(Q\9!2Q;SYON.'?IMJ9*:?3=ZFB+TLULW3)8*V!=*NNNDE%A\C%+
MFU51X!NPZ&2AD9IAG]+9D)1HDU"158;$(C-DFZ(21"4UH!SD3QG$W1'F:36Y
MICBNNN.+,A0+*PT(R021K#&"@&5'=KXL68^Z79QFN8++V>BD#P&U !(4@]6L
M#EW0*499&K#'_4_A=&7]-N@M]89-6A\IV1\%[E8!8X D/): *D5A50'/GFM)
M.]8M S;#'F8D!?":K':Q9N-BS:F*)K,5=-;(M*0];)I#/;Y2%UN#YSU,31G-
M$-F6Z$QA RBA9!%,QFQ (( V*<LE[6.W#MD,>YDWTD&=U64YR'90!!6=1R<%
M!"^B;%+J6S,BYOF/"*-U5L&T)GR$8%15F4F&HI2W%F*3BKHU#_+Y3.^+FO;H
MM$V%$@-O4;'D,0C:2I\R-6E.:0$#]OEWZ5 +P6L/(3@%C"FJ(@6'^DG:P,%^
M7M8N??OXSFEYCLI>@PDA!0\E4"PR6-1!Q^*BI";MDK=PPP/S[[WD 5"+R"BS
M;%8F9"_JU@'*Y)("-6EIYT*C.R??:[*O&U+5)#^P*7NG1=99L>1.&DV3-D%=
MW!&(^7=B(/:XJHXGN3H@F'TH%(/7UFHCA=7+WHEO'>;Y].:H63:G)((U%MA
M1Q#@2>908D'6U<O>FV]IK&/^_=E&CH>S@*2\JXGU@?VR-B!$D++H%)>]/\\!
MZ#GYY^A81WMVRRS#?/(1%-MR';5W1N1"E[O A,7=INDQ ]2=/,'4[;W?>NW#
M)GIOA[VWW<'!IR?-:HWE!L7)UF \&9W49_YH<>?T;NL'(Z);F'(0X:-=GGYE
MS\2(4A&2,B6!\,7+@ %LK05@:J'=Q:?"R\/A:+)+HWX%YBMUUVDRH=%VN8!G
M5B18\6]&_//!L)!PB#(%=CPRN*R9CUDYRLC'+GU.N-PZ;A&)>/,U:/_$41?9
M@>VPO?]LX]P1GUT_7A%[=@XY7'NOO4]._:5J?04R<%]05H,A%[P!JUAY:6]2
M(-V 7K#BZH]S]:=,RVU4 )Y/+[#%.]8?RK HX>X0?3&45+ AEJ2@K'S!W2#]
M]RW)L^$@#P=;-0,FXN#-=BG$CU#/>[;U^_;.,O8-Z:Q"%(1@";14M;:R2#9%
MG2!8%QK0-U8,GA6#5W[CTP'*(J.$%!1Y!3$3<AQ1T(&/&94H"[Q9^*I+S-&H
MWTQ-4A6I5L0G10 E%2^%,$*"(J69BTW:WG4AXK$YK1>C4E+R6<NB(1$A$JHB
MI!0:(,8FE<9;"!3G,\R-WJ.A  J3@%I-G51D953GK:06ZF+5G[]"<:&KFRX&
MBO[Z*/K956;2)D8H18AHP;KBB\# W; $ 0F57WSOOC5(PS[MXNGZR>1P./K"
MPV_PT?&DFQX/3P:3T?<\^Z)X.J^!!!1AR%JH\_Y)U"HP 5TDIYJP0]_W<)GF
M^=<]WH8)>W^<C+KCW$VUHD=#$)*I9,8D^Q+K2O?L R*XQ'901Z7$=&Y'2?Y_
M6%2$7I[$,?W/"7]I\RW_\^7LSF<GW"@PLNXQ+L,,@*FQB9<6-+H,26;,A2!(
M[D(^.)6;5$=S_1V.\I>X;/:/>\,SHI>387JS?7PSG6;^"L.;"#GQ?\8:2$9'
MG4.PTN3@2)4<&J0P%@;(N8@,72*&Q($:I0B>>Z<%*2%$7;2L^\8O?OW[S_"K
MXG"'5<6(/1;E*7JO!ETV6/DYC<IPU,=!HO<?W^AD\>Q*X4?N2LE%:;5A"QH$
MIJB=Q62@."K4I 6'"P;7 IC27% 463/PB(,UBCEKP"39G'H=LEK\1,H%@_1F
MM@R6Q8:<%+!M!)MC5,4Y")B5IY)S;M#PUH+!-?]!+QU06:?KFOW JH9" :=,
MM)@99R\:D'V^8)#>3-B=,\=LM4J;%.!,P5Q+5AL*&HLT31@.F:?2O)F24-:@
MC[4JKDS@!(60HG?LM5B5&(Z]&^>ZY@3)#/T49IN*+<:30<BV!!M5 .>*DA&,
M;9*?NABE>E]SL@Y&?5Y5=CS9+G4D)(VZ4Y#&5YDI+VGTMIMHO#[(;>QR^PRJ
MR5M&YR6=5"D5X145L#9%H9(&76KQ+Q%]:5!HT#3 YQ,O2*FCA>R210)""DDC
MD?4J^\1!?&S0T$OC )_+$$UAU:,,:J7J5AV L0[6^"(,RQ[^'RV+2?^P2T>O
MUQT</*4!C:9UA-=SOSOHLISED]_2YNDQ7W8YL\,S*8\RE( F@W?%&R@<CV!2
M$85"7!9COE!0S\>,9U.+L_A<2#CPD*,F%*[N2)BSL4(NBQE?+*CG8L Y:$4A
MBM09$5*F.H!D,+++%B'EW(3"[^R!N[F+H[.7V"/VR#4N^D;(U)#X-1J9M/,J
M>..AH$2@:'1VP43C0&"#/.O\$5H [VDC2*,YY(T>)+F0@@:3!6DM1 YN<?O9
M3V=/+$I/0I=*<()#$ITX"LW>ZI"UB+)N+:?\ @^AWN:*\5DU_<F@>]'N/3K
M7A]KHN_X?</V"<<G(YH&4-,3VA<G7%WLZOC5^WJU+ZX<+W?X^*M^\M5+?W+&
M#UW[LLF^>M7+8]>YWF>%#I,7(!UA<I"\8B*"]<6:D,@K:YMDRA=C#YSYVW-4
MQB!E'01+)FYJE + B. 46?ZX2<4K%Q#3.>V2G7R.@6+VBB,=L*A++-&2+MQ?
ME6M2FL B[(8T_TXJ((M"R>2$',7*Q%I:E5*4RR5"L4T:?UXT0.>4/)!0&R M
MM>?^R9%1!@J&^VU2=6N*)M2?K"+N^6B83])D>W0Y4/Q9SA5_,AC/+"%_ <W[
MO#:TS%(KA=[I HZ$=T ^. C*2>74BCP-,#MSJL&6F38H<U&&E4 IF!&#P11!
M:PO8A%F.RIS'P\%XV.OFZ0CH%N/Z>4'RX>AX..(VZ@P'ESC/(N=Y%H1M)&T4
M!4E6YY2= @2/0:@ R4@5<P:1&D*;.XL?@M!"HS&Z!- N1N&,4FP&/&F3BEL*
M_#Z>P&8+_K@[2B<]O,:JHI4 ^5$^:18<(CI(3A)P__>.0K(YQ&B-IA!7?%II
MDNMGX'(4ZX/0SA8#I?B8%:4@=<J43?9-(=-":I*?YG CF61R1) <$H4<P$49
M<Z*<K/5"::VI":6DOP_I+J7#P; W/#B[/+SR;K-62R:GQ'ZL.%%W;](AI9R*
M",4E%X18CO!ZGC2Z TY-$!JO2/L(!#FGD)3V$KUCF%5638F8%M*I_2AU&TD@
M2+I83%IYBF"*#BX7)H[TUK'(-DU8-?-])*^_IGCEQ7Z40%Z&@HXC,UTKK@<9
M ABK(D=L$B&G)NQ#N:@$N@/^RV<R*+72MA::PQ(,*)4S*)E4X4\;PIZ%]%]+
MGBMEBZ584@&+!9*7L4Y'YV!%B83HFC#8>)/.Y!<(](GMN4K-648*21U4-AQS
M16+?Y4(LA92DE$AXZ5)H (5FB^+*>_W8^+3E@"MYM. 2)(<("BT3AGRHA0=6
M0XHKX_,-_R4E%5]TTC)!K5A!*GK0L5CO;6Q$$9)OH_@O'.7JJ'"0MR>'-%J%
M7C-F4&'*@(C6RD1 ;'6\C@XJH7PHR35E\&<A&70'O)=329*+* T0..>8,X;5
MCT[!,\2J*=,8"^>]?I"UC>2.%29&QV*G;GA62QD+S,[G%),G$6%9E,^TCO_E
M)3=[W7YWL%KH<1-T"D&7K&HU<U\@FAR4T)+5M4FBIH?H%9U6;NW:05F=RI D
MA!:U!"KY0B(A*<8Z92&;$M3?#)<:B2@K6XK!A%3U+J6$LN0@4P(I2*7LEP31
M;6X2/C8XN.JV*S<S<].0(8DLO"X1G-$L?;5$$5&1LRXNBVJ9)Y'N@(-Q,E*1
M 03$!$E9C*QYC7,E%E/ -B7LGGW<U$@TE3#:)_"RV A%@8\%G29'FDU$*DU'
ML_;)+^Q!7:)Y-]#U@ONIL[9$CV MQ!I4U"TGI2TINP6O(K+(AOXV%,/-5#>!
M6GHO:_#*@O %K4+-X8%PD0SW\Q4E%M;WWP@?E%=$6#C(R)FMOT:%667*;"$0
MLUC@?3<7QHO?""X)T$O/]CK+!(R*5SIG+R% W2G5Q ;4(EC$[./;CO3F4_=
M&0 6<":%:.I6EVB3(Q^B#X5E>R/V6%E$\MR!BAEU1D.25A(I F:#HA8]"*F(
M1!A#4YBS4+-BMYKZ/*=22$[GD+5GUB3()4?*R2-&+03KB=*$\E9W&C\2F"TF
M_E^P0-D%&:.-!0K&6K=B.=3&0J0:WPT!8H)5[#2DR9$CS1@YN+#.2.&3*2!
MK/BTTB37-TY%59LDDZ?"H9 -B"8)7\ PQZ)I0EFVA=4D\TI=GP^3BA0ZU"UF
M2 M0@#5[-$>;K% F)]44=;NX.<=WP[NY*(N,P=I$!'5IA5&0=4PB0]%T4:!W
M1:.54_MFH)U*EJ1T$1A!D4(2M=Y[=$9)'T-N"(<6TJG=<NKZ? AD96&S0U8@
M_Q%:1Q9#*&)F?90 I&D(@18Q\_AN>+&H2_(R9:7)07:%:5-"L1(D>&&=6A%H
MY;^^,3_E8DXYEY*UA""+]S&#)+1.!F(=U!#V+*3_6O)='Y5 H6K*ELX!4C$Q
M!9>2 T<6#(G0 .JL4M?G2R&-T9:<(!ACZO9(45AB:*VL D@UW'?=J=3U^? G
MU!W8";1U3H");)"\+*R<O?*!S=/*>ZV,SS=650(6;[(V'CQ RDA%F2*UB49E
MKYI"GH5,/+X;H5>HX;I6D:PC$,4%1%>D=XG)8HWT*P:MO->W9E=C-,"^"C$A
M /]U0AMRWCLE 6U35ELLG/>ZW=3U.4V!:7"2XR[)\3N$%'VTGB4TN&#))E@6
M[LP_U_AN>#)@]Z6%(R6,@D+":VVUP^*L\R6$IDR%+3Z=[H);,YH4H,KH7*W)
MXIV!DD*29!P:VY2@?B%3U^<4*4F,$7,!! W99V^#4BY$R$$@_[,DB"Y[(MK\
MB40L4U),-B.+%4L!/5@1V<<893P66!%IY6"^SR+V*\&'Y!(*#[D6U6#A&P7I
M;%S&.YS<T$@TE4-NV5"<C@6$CZ%NNJ8T@2VD36,RY!8^=7U.%I\"(Y<"D2T0
M282Z>Z8(E'S=$DW(FI?:/% 7P=#?AF+XD!+[.25^(256L'(T)5A="KM_J;VR
MK"UU=J7F*X>THL3"^OX;X4/4(FOEA2JN0 HAU$HF)$P,A8)WV&P^W'+J^@QQ
M :,D]](4B[0@D@W6&!#<36W-$(P7LQO^RC'[105HT;*/;SW2\]?W^WYV0P:8
ME4Q.5!''Y(D!I,Q16"^-5<6NR+.@%G[^S"E*&:.3\J4$4"EY,D&(DG/BT,X6
MU1#F+-2LV.VF/L^%-C+DB(E4+L:# $!,A@1&JX0">YD3MOBTN;OX(683M!,A
M$*!209.H!5+Y'@4EQ:7 ;R%2C>^& $D*=(BB1)<]2/+(--(BYF2]SQ1@Q:>5
M)KE^B%HX_HRI0NL@LI#%$%%YC2J1UI=9$HM/IH74)'-+79\+DT)=7VI)LS(1
M8)+QQA7/A'*@T1ME&\*DQ<TYOAO>#5DH%1D=<JP$6KD(,J5:T3E %"(M1WA]
M=U+7Y\.AE! $N8R.%7<-N'4HL6@;"JJ8L2$<6DBG=MNIZ_-118E<E#7SQAK(
M&+Q,E%D8Q5"",WHY0K8[DKH^%P)!MIHRQ$(>P"KOK;1UF \]R^HDED,,W874
M]?D,%!OM34"3LX]@0C5%SF6E Z "99JB@1;2?]U>ZOI\#(^(1I6,44H%Z(5'
M[^LZA*R"(M&(P>)5ZOI\*6015$Z."G@-(=>$4:P<<L9S0&:;/;YXMU+7Y\(?
M"L&FDDF%NO>H988X!$@Z4;1%*VH(?Q;*>]T9XR/ 2>5J;5Z.OD+*T7N1"MA,
M7F>=FS(>O9")QW<C]"J*( =03H8(+*-CD'7G;,UA.Q6"I@S^+"2#[H#W"K7@
M93*H5(Y 4B%3A()U: -%<*XA]%DX[W7+J>OS6>E!*2<@[4 8$%9%@3G)(J(E
MZ0,U13DO?J[QW?!DJ@#'\:0+" <*G(_2").-<0E F64Q1?.GTQUP:QEJW>]@
M"XD"#C-:*,X:(9P4PLHFC LM;NKZ?(9IK+'>>8A960"IHB<R&#P4CJ%R699!
MXF5/1)L_D:23)FJ-0?L(2J@84R@ZN&(AFH1A1:25@_D^B\@5QZ&V O >%)F
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
M0?ESJQLZSH<\4D=I Q8AC08O<RQ)&5&*48I*=GE%GL7<=FK^S#'9!D$%O'$
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
MS.'._B@VW?@PV>GN#/=24)"]M'O0.SC<B??V]D>#]/-ZRWRFE1"0'*[X1]=
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
MF"X:(3&@5Z^'[$*%EC9Y;:2YGJF^+O22XY&V7:]Q)L<G9ZSQO'O&C'Y5QB[
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
MG7D5$^Y8,-YW*UKU*_;7R\/V-WG8;\3IT/;GN<.<BS^X; A!PJ52C@%W>.7
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
M$@=M,SJ2)6U3M1*J3FOQX'OZ3S:[/6P?]^C=A#0>*N^]$'I5O\HGLK.=0NE
M%.!XY]QW4YLLH28?P3"OC?G(:&S=\<UFWJMCA<_@MK+<4"2@J<> (J64O7CX
M9(-UO$=.48\2H<DY<F$P2S$#MVV&[/A85XR6TN0&9A"I__=J@EW"9X;I9TF=
M"ML$&)H?^'K#[]A/IBJ /T^;MMG\/[;Y6G/DU67 :Q=OI2 I6"C;:F^;VJ;6
M:%>862<[%JQN<@28,^MWZ6RF!$7D!VB_:LQ;NA>C2!CZ.M[&K&W',\U\82BF
M0_6P$85>Q>T3AIY87+[-@;I7><_HFHXP=/"6NW/$?G&[HK35QUURX0N?0K>Y
ML1^CP@E!4I0+J6>)I-AZ.FLP;([#O1V']QZWM/3;\^S[QK;K55_' Z$2'V>B
M78=_.CIZN]FW!S$*.)#FL]1TN< H;-:HP"C%G4P*1)FT*886>D5DN-O*R(B\
M50BBD; ;]OT4*$X'B9G T9MFE5E\:#B28:.UV^ "(M 1#YE0URR9AAT1?H:K
M09$?31F91%>MFR-]FC/7C!!>BN?#J#(),TE-?,?SL3%4+[B0<48E9[-)+"X6
MKQ;&)#&61W1A1$8E9IW2+TG8*W#B6X1(E#LA"EEBO>%^>:Y[2DPA4.0G\_-H
M%*H5O)N+TL4,7-+FLO^?O7=O:AS)TH>_BJ+>[MVJ".'V%7#5[D0P%-W#;E=1
M;T%/Q_RU(:PTUI0L>209RO/I?^>2-\DRV(8"&>?&3A=@.95Y\N3)<WW.LG=,
M@EZAX[/R'DP_4HA-"DGG!HNSC&-@U4RBHN3I"Q3Z1PWX1Q,],!NZJ,YM#Z;*
M7]35MCG[N#%63='0<1D92^4HAH('T2>QP<6Y#R4+PD(P:U2*.+D02DRV6_TL
M.; M+#7, 8;G*T*1@5^FP3_3S*HR,YDZ*F\:2#)9!=Y6184K=;\U6)8FX%':
MNNK7[U](25A7UE+NDQN*(HMD+FT9QDZQ0RGO\%XLC)UV@*]QPJ($+&/*O,7?
M$"THR$9<AV!WFGO@6*V&S6KHN3HA?%!L(H<MTV.AVNGQ$5!][%4Q+"9B2HAE
MA>$8"D)3$I5<_V!*#:S(K:MS\-/5=.5ZIYCB$+4%GC.<Y#QA%&@ZBBJ'6EO"
M9@M-%W<K]565IB_WBJT4?I=:U], F<2*4%4=Z@G"Q-B>&A+WKYXB8@S2@_-E
M=5MAV^!"1ZW*[5)8UBM&4O&M!\]V@V^'#<_V15D?4/D1,KS82/W@0? >F:_,
M"])G=#K%*Y"66EVD=\;M1G,+B8!Y%Y\L.YFL^)9--WGYK8[$[%]VXJ'+3MQS
M._V$[P^R7@IJ"TE(X968<FVHV'E3GF^72EY+M)!6U+P3WK$I :*P"!>8*!.
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
M)377#$.IHN#Z^)JYVRB5U6%TYP8L=$Y+J@F#I=GMC)7S->.4F7+Q*K8X04W
MVDV^2G@BI<PNJBN?F>,JAS@M']?S\G']JW5<<9WZR%:CCKB;O^MC3'UA0GAV
M0:QY2_8G]0R"55>6#*O"%@Z8N" 8L0+;[3!F499^7Y#)C.H2AXLXKEPC$*+P
MO]]$Q]='[?YQ..P>=Z_[P^/V\6AXW0Y'_</#;E<<CGO_UQF^V52*4'ID*2GP
MJ%M-F#SZH3+Y_O2]J[-/7N>O<LN7__O'YZ]GEQ>___WLHW=Y=?+KK][IQ:=/
M9Y^O+G=.J'[&.Y=;NUS7EO:MQP+=[JMD@>Y*#OCR]>++V=>K\[/=VW)0MC"E
M<;9 J4C !RB:$0GKNXJ@=5H=#]X<4]@?L270^!.<S(4R!FZ%68!WI4E+*GW_
MJ'_(-[#U73*IM'4IAQD'(Q4B RTVO4N,0@B_H+R*N5:<'L\U!#,);3N(H8HB
MV&B%:9UDT;_!"/3AAV\8BP2!>XJ^O!3T5?CK*1(["%/\*4DPN#":@SS]3:2P
M0_#Y.2P^2;&+R'EZ![]_ F57X#]@38XFH.@6>)]_@J5'-T&"/^5H7T;P$VQ
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
MJL2Y-*89,XWL22U\\_F,_'TT,H_HH0B\H47DBQP$#V\2V9QJ]6#XH6@D+>P
M[$AA[87R1)CEHMVIM(6W4GQ>!L&E%)OO%!:G4>6!Q6+@8-I,+FV&SVY14H[B
M=!XR\J5 6Q#L N W[:"2B&N&2]7[Q %_5'TGV/-P&8T7;!CRMYD/S<V&5]8\
M*[036KT-"/,574-S>0#4.^3E 3-&ES99M9::-A:LC"-KP$2GL*: ]-]Q]!V?
M%T"Q+,,;3K[C@GC4&D)2G 9BFBWDW(C[" L*[*P%'UBY+\N;"/_"/0V: N*?
M!E$.C)S.BQR6.B(:ELYV\!W_]D^P*?(P8KURYZ#B+N:9D1]2347?WQQFB<2C
M9V'G_PD+'LM !>JBZ#,ABYT#/T:MMYB$&!)&EN<8;%M^F#B'9<T_05<$@OK\
M 9J42EH&8U$L?#3S^+.:G2$E,OCNDT&&KJ&$-$;+2F:NU<?;)R,H9@TK]&XC
M!GT;D=_*3-PG(X;$#CX&T@B)P!-&;1Y>5>!%8.GGP$L\S3\)6)?"!60AL$<$
M=>.[%-CG1O(OAHO.T+P"7@4-YU+)A;=OSB[?O%,/*K;,RW>(%L4LRK10D:)I
MZ1J8"D&^JBA;9=4317C+\1.^*)#')?SCP2B3UHKRI8*%?I".0;8*Y0Y4W*&E
MW7MO':ZH888J#ZRWM?7[5;]71/^3$B-=!=^U8#RA#-TK)1>7MZ-$:45^UIO5
MP2&SH_2& $WZ7(E/.$#\9[8+T":7'.X_S*&VAVH3D;6D:Z@S9($"\QW_9<U1
M9=CQ/6LZDT4N0PKD[Y?F!L($BXSX@*TN=#NRPTY.GCPZ\IZ/8_E-Z9Q!R$1R
M.*$5-(<C8\*IN"2]_-L@GA-/?4#S<!88SPJLS\M@W)S&F,X3- 4U"[(Y%F37
M49$I/-/B#O,_X'MP8R@G(6TH;6%5ZJ\6^ON7K]%9G:_1Y-2+IEW+C.?]/T%"
MD>(.!XI]"<GZD'#0!CMRN@WJ/D.#.IVC(<Z7E(D:G%TJ*<>X[E,"?Y=PKU(>
M:CE(@.$4=J@ZJV$;C>/'FM(T^(9.)W9'8H*$&$6Y4LI1*A6$MTKR!?4^HV[F
M$DR5_*I2)(QAY=*CHV($C&6'<BL"H4!1^6"*YHVQPV")E!U07DP.9L>MX(2O
M(,0K2(3V O&;:MV\V)9W*3#K"X1\I^\=>&\NY<><5L#ZL%78\481AQ,U)$T?
MSO' >5O0Z];5?0_6>D/Y^5>Y!R!88Z#V%+XPJ2:0V."]Q.P2DU=:$W#3H-()
M7^BVCG]6>,::1V=ZXZ4F=O9=&9EE1R/Y-5FNYO>\I-/JEU]BO<"S;!PT9>PA
MR;+,HNMYH0:!=TKV'6],A=W;Z4O+#,X588$ ,'KGN-7[>0LB^"I"$""H<C@G
M^.IHC'((?8)L_[(!Z*\PL95(+,7V5$ =O:@9>@;D-DGW_K)UF95VO6Q4LI*@
MS=WRHZSDMKQ5/ E"G 1(B37S6DI:''K4ZFY#SMWC*312T>( [1V[B-0OBZZM
MGSJMP="[YL85L-G>$$^@HAEO!F&:\SG>-4+\21L<%92+(_,*_XWWTRV%EV28
M0>.12XSQE"//%(,F>Y NUN5PK6 5NAJH(Y^@OKEM<'(TH_+*:\@<**<4O-^:
MS.5,V!=,7M/RGO):P=K]4WFSI)UOGW;"RU=.**G2O =K-BZ[;<'$%4DNH]!9
MN@ABMH-J'(FV\^N#9?#K2)=E"4M[1IMMQME5%LT5 YH<="HEA&3=:)YEEBA3
M*Z$OXL6(G@M^4?J=LIM K3SJH8B7064CLJ3<0:L[F5..I P^HLM3.UF5E64>
MT?%(]<C=))6NX,)DE("@-@UJM/BW2*8<T/2V:1H*<F#A]0!& SF(0?B&N)M9
M=>Y\):"><"/(YT@N%YQZ=1]I@Y?)RATFI "J<9Z3^U$=:CLU!7.1V"$]FG!7
M NKCH_/V@-JDN6(^318)ZL%$86S,L]6#8$,#-/=;WL<Y[29?J,Q6*5]TAMXZ
M+<;77S3=H/0F=W_>WLW9F!-]FN8%EV3(HXN4_BW#".\GFK$YZ^PCY>.,$5OB
M_C2A')/<BAGC3M"!KDGS8==1*>2!7G;B3^D)NR> X*\*4O@K#GLEY$*.;N!R
M?">V]4*VSM%FY(5>+UAK!8&-,YR((*304"G-W&2;P..PU(#R@$J'!2?M>Y3K
M64I?2_.502KTF?%'\I000;1&SL2;1@E0/RX]@-/QEP,K]4+U >(NB4)#X!;M
MOB&P2I=D<;D ^I92:'7_,<Y'%;#%J>U#,\R"#BZL!\B*@T)D4YEY2,%^6";&
M(DS:032FFR-0;V]Y[!]8I2Z34"3#AB<@!(?Z+.417C3P![U#WJ*!WSL\7J5:
M=8:OX+A?"N)MWY,!:78%A,A9E'.*5[:.P_U&+H(3[?\]4P=;282KB; D@A0&
MM"7JNT88T$U3?A'Q%]T6AA_@]R"+S/4J/>_(NMBJ1_(L9<F 54*"1;["EP%B
M/(WZ3YER2)2"LA@> SV 7FV]PTKZ'L>8Y(5WEDS<MJ3C0Q.QXD?ZPL/#28GN
M',/F!C?RCN7<%>MNY*A>A5B:D*JA'U[)R*MP?."JP[05]K<'B9[N*V#8WR.P
M!4-T<2'I=05-/0^6=9<1/CRFA['Q$"7PP7Z!OOY'+CL?X1-*5R];G:-@1GY%
MT_J([C,394!# ;XPTRXOS.G!C"C@,)B*ZB/(Z;L9M5M:>+)%(,K2NS2C#![U
M(@XV4>9V$&680<U]?F2J9,IYUNS2TR+15MS*!Y"6!E_B]5\+LEEDW!<^KKFM
MT_$X%]0"3)*%OYH)F2I-DS5A"7(AC=BUB'9[=$O3I6.+WZ>_S0IE^4O%-4*U
M[Y9N%[+WY85)TX.5)2(DU5 Z JB^2O9MO)4Z(K\+[RUK[<K'J19.[U1"/X<U
M8MPEYX0I/&RII?QK1Y7,^D;6.5/W!<,F?E%-(;_$P3UACITY5'\%(8M;<#G!
MD*@Z27BX_)6;&F*:*$MKC( 54N_A!,&QR#+C&()+G,9G=C:)\Y:!7,FW;6*^
M (VX?D/#<^W%*B7K?Y$Y[0U<X/W+25#_'TVLB,N?:1:'WM\$Z)(3[R*["1+5
M.143@MD_/$%'0$$Q+5;5:JH6."JBRWCPS.4S*@2MR+H_6I<M;0W?T=LY/RJ7
M&04<M[$"ML:80-X$@TYDF$JMN]V17LFU43CF;93-2WE8<-G>@DR\#A)56PKW
M;Z1RI?\U#S),/$](DYX(F$!V #LUBP.49U3;P)JO]B=AZ;Q=Y)%/YD68WF%:
MJN*(FMWM=KJ#[O!'.M HGQ[DZCV3^.$LAL)ASO5&E!T_FF=L6 ,S8$B9O6?S
M.%8>8K*2-$-A;1??"VE2RC)AAXA5QU);9Q>7% M+5Y!.=LT\I:*E$K-@GOE<
M!LO9G /MPXK&*9;7UPP,PF% Q8\R'T*EKYOT9SYQZ'KBG$-=Y4+<OU2F(L**
M_PW3E$ ?@263PO" OWO_XO-=%Y]_$D5"R,JW1-DOI&=R54W%A\C:@/:G^E:-
M&SZISW7E-)?K8*?!@M5 V0$8Q</"*OZCZA-,G*3VY>3ND?<,73-"\*<JY)24
MO?\J0(U'AKP1I&B;$ADK#1@S<N:R^$%FYXAJD2,612+@3B5M35:RE6)PYAUE
M=UC.I87D;)*74_E.&L4IN3 I!PU^MY)U*3A(16648XT1CS3CRD?:)K!ZYS+Y
MD]5K3I.F:QQ=52-L<RRXY$_6:P5A8 !?,,D!KI P-014JJ1(,-07W%#9B+B6
M>1JAH.N7^PMS50L7Q.!C(.&H>I)53)";L+PBLZY.69\DZZ",,:^=:+ ;*=X?
M350FUT@^C90.$[*'FC K1EF$_C"9WHYE?8KZ$];#V(>""8+JN!FS1]5T:N\G
MO@@3TJVTO6 VBU5FN$[Y#B0MR4B%(X4Q+LXH45D&6IF;4@5+]<WX/;('Y(YX
M;-3E8*#F8GD0X"+%,1A*B6-[J G7,RL] =@-CC_\@._@NWX"1]IG:WPFR3/5
M!?<R6J-Z#B^4#D@RH53L2"?A3ECOHM WUV*1NH@14\H!CNK(3<N*>/$'.+$#
MG!A6>:)+%,,^4<XU>C*;QP0<"A%,=?&4C+O+(\W#XGF$R?YKCG<^N@JDK,/S
MRBF$:0(\5PC+G:N<PHDHB%:6&%4;#6;<>"R=YS%I/SBH[J=..E,8H;$W,@GR
M)*^BC 7N-:?'GW)1*'W]8Y13E/F4?>G>VS>G'T_?O-NY8WEEJW 3):31\X#;
MNM9=$.6RSIM=S>K:*=>%DM8GL(!!UF]4K@!_6=^K1!Q:WKFJ8.;+<:F,F5(C
MHJG$V)#%A#IE R8QSY=N2Q6-XS(Y!K@H!=#Y0.O4(]1^#R@WC&X7;0]7;W8[
MSDD5'+H'NN'0G6.6K3*[2LDOM37^)4-7NGE+0?:EB(^_'!?W:R)COEWOJ-S%
MWN_TAN4HTG("& 9;4^FPQ%I2F>F%2A9/D^]Q# VQ]_OA\T*5,7S"M%\.:4..
MON3&SE"<S<'\IK>ICO$\G98I(=!JP8K(H/)5R6+FNI5LJ91)0[_6/8"#29U7
M7_-J]LKQKS>8[B*FYNH-,)51%7 ^,B#1EI059.K"HB2A4X[+PK&GP:5.)A0'
MZ"FL?B]-SO(98T X#VYIH\IDE/R B F$2$$4\ZNOEGD/68 U9)/T3CNF?:7J
M4,6L79NGKMX#%9M57P%Y.):V=?T&D2$2!]\Q4^Y.H8HL'YP'>(<$ITZJDA$>
M\O@@')F^W&V9A]J,P1; Z TH.U14;QE-7*.BWW8ME.Y+N0ITRY/SX]IH*M(K
M+C4%D^MR M<!YU=0^$UJ[]<2S&.U)N^_K JOG(22FZ/$BJ1A:1RJ+;(2D'F;
ML0?(]0:48:J@!;AKU\C7:KJ1$O/WYBR9-*12XA''ODL9UDKJ;9-]RD5%,K%M
M55(HYI"",FMJ/4WE(QW_4J[H0P%\"OR$WD]'@^/6P)MR.B.EE:"[CN=CPG/X
M>Y*6HA/7:991[AVZ\5!KH;.([D6"\2$5S%0_TOV"E,9H!:7\F;1SRUUX&T2Q
M'9JC06'X++A+O)]@7_5,*V_2KN\ BVMD\H@(C76=4/0E"[D6-&"S064L<08^
M'C=R1!<L7#2AE!;))E_ D'WE6JN;- U)</ TPHA $ZU#QIDQ092I-/^,TOPC
M"M?AJ&8XZ2JY9T)$32[+('1&>V@,7ZO)H(6"IE9T<\.B@2'5R)-AJBI&43::
M3\D2P0C4B%RC). YF@EWT@&P;\O[;+^(W4<<3H>Y%_+:TK,*-+J2#%GAO0T7
M&B$O;#,Q&>(B?K< F:REL\=ZU?Q9EO/]P"?(WI(/8.K>H9JM4\'M(*CM>,IA
M>'0]:0W#=D4OP:SX5HV*5L;_.0^YGB,#:R(+C4N"$:\8:$.!;9$6UD1INV$4
M[U)A(YU3\E%2-'!)]_N2$N]2S J)P#FT)"G#< ;>J0PJ5. \CP_^5U9#,?-J
ME*A(4L)[BSO]1A'FS3L4OFE\2Y<5S#B=DNZD,)APD-&(8!=2MICEK40>%P6-
M8'FBX-X7LTF:"(,M<*7 Z> <"E0^\(22VD3VIHW]=4>/HMBAS$0V<$O.+?;L
MD.XM)$P 3@>?+Y5R:G^+UMF$!(LL^8K,Y*0_VLR0T&_@Q03CA)?D+?F+%#"#
M<LC4(Q<I^FISG "E2A_)T.0H9960% 2L<$-!3B9^@IGIL>WP,9BZ5B8DB5_;
MX@\%Y>FA=R@V&8A3N,1D@M,8](8B9Z>2]*?M7O4 Z!PSQ-%5_#CE!8HE!Z6B
M-QT?1.7#Z*V'X5L0[9&\70R3B^^2L6VNO@;AF4@UA5!^I":DR:H$=):"2C%E
MZ#N1W) G%%493($D$!%Y'"78!]@YT8B]2UFA ML$]A$8N".L<P2:4=!<Q#,>
M1%# !-.GS7%04V8X.VWM(M^A#H _2&\0'16Y/CS8FE58'9"?4$(WAO07I,!A
MXA0:P1+RJ?\.CQ-#3<4!6'H)^9BGBNM1C- U.4J9A:WS0<7[FICDF%4Y [O'
MB0RO,YTA#*6FB&TN2N6D=/!E]7U(!H[&B:JF.FNEDCVUJN)[9%ECE2^"D8>F
MI0L36V'BG@L3/XG$C>%&16:\,\"S=_J,JRNNYE8K2V%.!8+;7WVW"+X)3KU8
MNLKP(Z[7 ,N8A;NYQT!(S7+M%JE U5:"N!&[+ZN>M=(U;:V)<9LD9!#!6>@L
M4%9^+-FET7,SH6Q"4","A/3C_'LZFW=*WTF3F[3L62_)!ND2\KT(?5\++C/2
MGTJ/)=U%4HN1MC3>A<L)>817)^&:I:=J-1%\;?V_->[()6_:NWO1XDOUBQPE
M(P=KN>8&"QN5>6U90U&B:):):'H]SW)9\33C792IG3'JAFJJ.K&5@/\I8PQ_
MN0DBU:U@H=A19?3DPG+.2@^<MB5! TUT=BK1#S1GMO)^ZK>Z)?<%UY#<H_U)
MPW!5Y2JY3>IRMU8VI7RNH[Z\H37.@)?,.@,.ZJB]:"8%6:G,YA3T,7Q-G*@J
M(W06](N2LMOJ-YZ4M214 8.*HL\R4[,I'U,J!B4X#"/;T&=C!4^+292%!RA(
M%[K47JIIF4XR1\$95'#_8K .N!Q%XM8E$YQJJ5J3T*"U^J]2!ULON?$8;BZ%
MMN6EO'0+DP24=+1H+O.[R-CR[9O9MYRZ>$D2Q+<T.EG19$&^= ,KZ.4*M<SF
MT]8'[+%"/RL5#.B)JPL<K7F)Y_P*G%E?)9Q"R.4.JMA89OC+*$R2SA7'-7#%
M#^6H_\\\$5B;=\C1]%]/+O_*>6VA=W+Y!WURT.GY/UI,;K@QIAO/.4;(&#'2
M._!..5[P>TJHYR]ZPC4&G*&BJ@-LV:0U70%D,H-T<W-Y.6'GH=)EP2BP'YZ$
MHLQW80=]9$A12<D/12E9096EH,S4L1AXTP%!"X3BNE#>DHBCQW$(C'HPQ7@*
M"H7*$S1VG%)'#;Y:R?V>&WA!2H_!.GD\/54$9BT$"16;E\UB!86AB:V0QS+(
M0,[0&M*;)-)U5 EG7Y&@8GRZ/&=X/A!($@<:Y2UY:S#,6\GOQA@Q'$<&@T43
MU&AAG8$OVTA9S2+0 HBF)I2O&O&@U],>MN6=8=<2(T&XSGL:%2K7-BBEF3\T
MB^.U9A$4]J M!(B4&S5#^&_R,V& #W9!!ROHMN4B3K)31O/IG/T2!S+=@D&M
M#&Z7-#JQZ(QS%DPH2*]"_F$<960W*.<XS]@ ?!$RUSP*&6PD9W*1CW@%?AG:
MB?R,S#>^TRN2P JIZ5%@8<.S>&#N4/?HO>=C+=Y?IH7=1&VM1FQ;7I:'2U?'
M#U09.^O%3UY2ZB::5;J'=&".ZJ^USVF+/CUH]YMVM5U*T&3EU[X2.4-(_Z;B
MO>?ZDGA)4DL4%OODZ3ZGN7=9B)G7-3XH':RV8]BP,K@*$[XG%JJIH93M_\;[
MHNYK'%77KA"IB%XO+%DR"K*,""@_%-]'5!Q<3(0EA1#5\#]SJA8FT$^58:S7
MLW1CR#($G:VO+S@XYIO>)JHLS\BM0 L^DUC.;3,8!)72456Z,.,42J&[)!_1
M+0:"3B4H<'5"*=9M"CBLX9 :J[I$4L>%M&PZ-4C/W4ZS/S&:_&_J_D&"+01\
MQGO1P+4^I--7VE^NT.N'!YWNCU:1-]P5KRK\K/W!\W=.\ ,(L2SREY1]OO?V
MC47%-^_*@/>1U.:#\NP9/ '1@%&SL(2E4N-13,U,N!G^<G)YZAWUVTV[HYJS
M#V0%(> )$5T1,B"!J?51506J54SN\44%.LHYE8P6LE>=N2"$[E2Q=-4]RIA
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
M/$F78@4],*^D$\D@@@J3" NZA8%E58(J9RU2X,ZNII9NB&H)>I#)U$G\P<+
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
MD/;]#4-TIPE9O\ ="*@E"/R68]L(>$&:W*284SW+TG\**K:H]+'8L"&(JE2
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
MG:$U]D_=8>M8#8*CUKRLY9UIF-@R'J_5^-+^@K\ZVPBG939H:6?NTGD<>I,
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
M)1E60RP/4UB;WF@3C"<MZ_TK+O'I2KC$:?A[[;ADKZU_2E4'UR#*L;0KGKF
MQB./[PTV 9N^D#)4%9B=KH1TX$TE* @]TB+A9FU/8%ZSJUL+X=::YJ"&#]LE
M\^6&_:BB A:.K%)=LRR?9%Q)^%I_HY9%U4&?O&2H:KJ!LOD#6#&?E-+E7M:Z
MN66W='-4$51!R'IYE%C %4*OU;0@9$N'J%9(J;A2D9G.;#+"#VAK85KKM9S^
MU"G4?*A!O4ZJABWZ$>?>5CVP"O>(TY(7TBW?QW8#6/:R%:>19LE@(M"//7M2
M)CWLDTOE_:G/2K-)[9&N7M&\-.YAN=%S 2HY4P$E/\!>5R?R<S@UCV5]X_A*
M, 7^79T) J-6RHPZ<L YB8M4N5,E.L\<GK9*<JK:OG)157Q(PK@*?9&%0-GE
M[)$>ZD1971FT-12</-AQ):N NAP7$XZJ5CR]LV5(8AB..O>"$8[KVOI50 _,
M)1.G^5@=,,\\%5[S:AHT,Q1X#IJ60Z7AJ6.@+$<]+ZUL*%G6'G5(52*^MGAF
MJ?!*^=4VE<C-:.H?2ZFA?*EX$H5G(?!S[1 -[+=C,1JWSP;;9IQ4L^LF' P[
MH+0=K'4<$<"]ZG3P E?F?_XKH-3Z?4=]^;XB(ODI^?UEXPVM866 0%.44NN7
MIQW ?KG<B[^ /TIX0G&:&V^!4'K& :M08+L*/%"63FELQ]C% 6A-M7381C-:
M(>;<.)J>(96TFF32*:&.&JLJL=7$ZF*Q"H]F)]\VSAC&Z[36I<30M"%R$+Q"
M5;4MFZ*SBX>E"@.7>,"T<$.HTS?>SC/K>.&#9,"9U,'P_14NM)PU0--@MHJ9
MSAK7!WRU?-;EXGBN&PXNDFV-:J<[0"Z;5FP7J>1E['<QO^](.\3_O53K@<JA
M4+>]6&"15Q$R\OM8X.%;FBG3[24P+= ;,Q3GX4NM/J&N;!E@]7WX!=8+6U;@
MT''9/?@OM/!3$LBS-./CWMO#(_7P*P\CTX<1?%@M$I<=U:NV1-52R">BW+7[
M=O#?;9QI9EM) B3;&<6,]*G?OL6VS&:HZJ;%-)>6+>H'E0'/8\9,AF'"8RM7
MFHR!E,Z;Q0^I**46K/*L%_>AWH^FK+&$XK)5];[YJB5B56A*?I9&>!(\J12.
M(5/D63VT50P;J#/^(05:%?.H3D#1_8C<US3CD2PIHTEE7*721UN*!;I\(A T
MLO"^ND%DY:]V\;P*SE"'3:-!*D^Y*Y #+H-/?^#1]WC]/ <K*/&-5TPRB473
M;Q!C@'C&\M!O3J(L18X'-HSD$U]+OQ>_P<H\;?^E^G1R"A[2U":6-,_2.@;U
M-]+SW=9G*-%Q2W[S_?:GP2W(\HGHL)EONW%'Y:BOFO),#S%ZE</Z2G0 K @E
M\Q]/%\6;/?A0CHII/.^Y\AD6J9!&4[N/SD(EO0E]E+&YC3,1!WUMZ[SJ0":>
M\*H%UC2F$4--"N2QP64U,CQ,5NU3@M["OGP2F&:;ZLG)VBW3ZLZ-Z)Z.&%!"
MX2G3N J(EW$1T],>Z=I%C0;FAXI0),;GLA&?'<ZN@K-8EYMSV__"Y[[PG,%O
M.]K;_O1%3G?IGD3JXBI0:\B^Y46%COBW$I6+I]=N[+#8 3]]H^K=E!1L:H^A
M^C9@7#3MZ6 4L#-27=B9?U]:5H-42Q#-^LROL3#;->-_Y4I_(M_GO!6G+)]3
M=BK%.GH$)J5J;R?E>I.KTH[EX"@!Y3&F9$^9=B1[44V*<H)!9AQ-9CRMF&15
MBH9RW'#9D:U2HV:P!9T;Z7@:TCP-9#^?II54=]5-Y-!_4:6]X <EOKBEX4P'
MCF&=Z6"BVA,U1[(SF2M]XR!'Q6]22(T&!H0O/)61PDRJ>J@95EDN,T$M[4DJ
M+2 _7S#_*8=6.4.QY 05X)]C5HJH/1!I9:U-FAC5AHIF/2GH(\!W- :]XI\I
M5U0'%ONY8AL9ABRF3A25?0"#4;&C\WD'4TMWZN2Y5$Z&JJ,+QF#*P$-L-H41
M>:H]0O7.XRKE0O5SJ=Y:)S<I"2+755Q(_X.<L;0\B54]YQ91SM>$+^AXD_EX
M$W=YO,DM^ED%6^L;I/*$3;1VMC_MG6Q_W/NZC?VS.J^ ;"\/OI>^TUK<5WE2
M2D)7F5>SMI*$:JF*8&Q)U#J;1^\*QAV(HJQ\'U4:XYV;K7ED4;.U7Y)$G2%K
M8B+U:Y_6V=5H*V?CUZ;_=*VX]TYV]PU_N\+6J__^^7G[X 0(ZV3OG[NR*1M\
M\+'^^]W>\<['P^//LH?=V\//)\;^]M$_=D^,H[WC?W1?":X.)HJT;$6UJG,$
M^1G0D&S;)]5C5!54AV'TIM3I'/$/("[13B!JO#&U4[](:R5NQD]5R[/.+U.7
M_&\?T1%U4\]H#UVC\@BP=GU6S^DIG^D($S2R;#*\C??4>"3'*2A!9@_[ .._
M9Z PP4_XNDPO3)G7>RL?ZIK3V"^=9,L)HE(P"P%ZH*B4TW$[! W;%3?T"VQ_
M=^'@;*1P");*AJ9OYS$(A-W]W8.38RDCCC]_^O11_KU]],5XMWVRW7T*K,("
MP.B9GHKC#J#ACEZ 0IRB H)&8ETRH=71.2V&RDJ:M-WQTK51>==KOP=07UT[
M :/N!O)[#(20 7DR]TZ9,ACR*P_SE*V3EL:VRD0^DH,$I(-EDS$ ,IH4C.SW
M)KD[[?H;2;OA4MK=^6/[X .H+7NJU2QH,ML?CG8K&OYK[^0/8WMGY_ S4#!^
M@ UIU9][!Q_D#0WM-TI0]XG\ *1*!](F.F.Q>JNP6'UKS2W6SG/Q<O-DY_#@
MY.CPHQ([GXX.=W;?H372"4Z\Y6G8[@\VF$Q3%=ZE)<;#HU=P!Y.%\X$R(3YA
M+DDL8QR>\O!,:L/T=W0U3H^JXV;(O#WD43/D%R#38@$24L7,'4T&PB V,XG[
M0KRL7?7'C2MU]T)95M@A_27<B6Y=Y::M>P1CSG2>23=CXV65!IM*R,3,;K6H
M;2=O).K1JB/[R=1K6ZL Y^A01=]E426RMW3,]JC0HU_(;$T\-)-3+65@FO+.
MR?,*=1B%SZT*?%3ODDYRE8%9MJ*JJF^/=W>F-D<Q&50F),ZGMARGU3]47:<E
M:]Y>-9')[:G6)RUG%BB5IV.3896I+4\=\J%,1JJ/;%0:>@;8-I]9(9TV9ZE(
M\/2.*Y^X<C^K_''U7:,;5=])M[.T \&LDD=1N8HPE(N##G98%75H@,&P\N2N
MV<F&XNHEV6\-;AHBI1(A\*BK8BZ9UW27P0K%HU4\JI#N '3EXYEAI33>@ NN
M:Y%>S>-MG28O=TE,H:%WU[&KBA PHDJYK MS=2LBX$DQ[08[)X^"I]M^_4:N
MH0AJN&>*/)6U 92X5^<75?+(./P!9/5^2FCJ2N3/+@BF6;=/@UD*K\L1.I11
M:.#Q$)Y!@TE7GLF3:QFEJT0:_MWL]C3!JJ(.(_\Q$WU53!=@5LHMD6<STB]Y
M66/ZS+AO_LJTO(5XS)<OCXIFOA*)WX"O\N8)P-3F<#!A*98SE/[3*<A*,[D\
MP[/M!1;QNC@_WPK.)BKA0(6]H2\I&ZLPN/KH].;;A%YD=$"-9*41><2,3D*@
MAF%:7EF=D]IQA9)'UNC!4+CRLH3+RJEW<:K2-*2*Q\PU">29+&RR@ [F<P(7
M[-.5K6[O<B<@[H: )H,O43-;++GORG8W$.5[61UV*66Y&H?24%I\-ZF'Q@$J
M8++,P!INL/>P157UFAT9QS 6DAB/$<%R6<SCL#AE67525M;JS0GL> P6I[I+
MQET8+ZA%;",IV%!@H/)+%6B^<WA\.'WKR[XQ53WJD-5ZM.?S^D/OVNGW[@=H
M>(K0$'34Z$,R&K0:[MH%@SX$G<G26[+D%@-=O"J/NEMDY;BRE-EP]+OQ)9_
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
M;O,=[3OVW:I675NS*>R[X9/60;K.<;X:VO2OD^A72IT]R6 .)A@;<&NO]=I
MP*TE3,>*?2S>M7>BY$4J*Y7>1C&Z<3:_U_?H3=8 GO0TFVOWR?WV=,VI=95U
M&9YL$X]D;V[08% /4K5RA:I\T>X^"1^<7&)'JY.S0B@%APU5:-/XK,@GIV?&
M/KLTB-,S2!A:/1D:._=$X!>8Z?1YQS!<F,6V\?=)EN:%\8GA@J0C)NMI?)+:
M5"'CKG+^W7@Q]3Y5R&T ]:&.AI5YW^?%T""6^><T]FJV)S6\01BVU1[;4N6M
M:M;YLG]78V<-V)8^:[9=%\Z<8Y]MY#?5?#:7-'XSSOTUXP3F/WI&=: NH@(X
M!Q@YE,P2/#2SW'C]E[;?4-Q6?R;]5O6'MZB]K _<EQ^XGXW'H]>O7IV?G_=A
ME/W3_,>K[8*?I3]$^4K$IZQX!<3#7@6>Y=OD%0R6N)[CAO##L@*7TE<P19B;
MC9%9M'\V'B($V7>*T]!@5#.#IN1N4/)VI06I9BX5(+^]-#^R\[+1FG8:0*ZA
M]I"/<PP(KY*)W(5 ;=]4PSD6HW$58%X][^;(_0@Q,AK#UXWRK="UB.U8\'CJ
M$/HJ#IS HT#[IM,?7XP1PI?5F] 0KB%\C0AYJ9JM<%J:M4H;#N^O>3OS@/Z/
MF72AQ?FFUBULUON">>>M5^>9.YW6Q7H]QO,OX*.J$-X0&$)Y<MH\<Y5%G,8X
M+62]U8J9FH"D+.\;MFW:MFNYVCK5 N'6.CT);4)=XMI^0!WW5>SZONW&XH)8
M1.GT#CK(-EFUT4K-FM.PI7XE(?YNAZ^J^0 %\T+$Z9B=%D(,%37OR$^,;?E1
MH]=<L1A!QV& TJ>UHU_PLPR6YS0590\UF[X$V[_$ +OPL>(T-]ZR['O/..@;
MVWV$\.UXF&858O\0\$)\&=Z38^"F,4#=IE#1HY>&"N5<( "(==4].6<R6W0Z
MX!O!?TWTVM!]'JQ4WH67*)'0Z[[*8#MK7J$AG<J$NWDL5Q_1HZ&VB_31P"MB
MTJ<!DXKOOBA.17'E="64580(HA5>?3WL]HP3;&QJ;//_3%+5]K/^ F\^V-M1
M?THH79^T_H?:B#6J;/!02] 6I_0FAWV6HL>[>QFF:+2H2^JU7VH9O)D8>R>3
MC%)LN$Q?Q;9/J._'9: (&G7"S;;('MPNFPNQQ9@E^[H&M9J^'Y&^=X>C07XI
M1.4A^S2!I[%2*#7B>A-IB9/,MFV3!-0F007V,@2*NM)PH@^#\QK*-:E/2=VV
M/)]Z0.I.X(>>)]UK]A3--]R_IM%\DTF\=KX%^#NQ7S%BD6I.6(),7.#IW6C
M3H=M=)_:A@=Y9F)G(#&6MES+,1>)\;D0V?4.N+_G9YEQW#?V65$8?R_ZAD@2
MP:7';:K04T_B?' []QH\D9\IVQ1N?6 1L30'J-H[VT-DSY6]^[H0 ^E4;+)S
M_GN6$:J4(:NYA45E/IB,E]\R0Y/E9 B\='D;L7$W&"'6KXB6RAC=<&[A6O^>
M%0U\G HS*@3[;K($!ON:#<[99;GU:A8D "':J[IL09;-?>%&=C=U*PS[;F#?
M)7/+[Q-ZMQRK7S6P]Q\B<ROTW8WM8']]TA;2XUS.E-8>GGFVU%W4)VTD=,](
M<*=&@@X1?P06T!9$-RP(^_$LB+=%"EO\#S AT@%>=FL#PGX< ^*1N;+_^-XL
M+7^Z)W^\J?S1\>W:2;6V)+Y Q-#'$S%_](V/EUEF[.=Y(7K&W^\@9&@7O%0:
M^CO.%S<I!BW!?%E+NB>+WM+HV %TE/&S5O@*@##[=YY<#&6\UC#E13Z"><(T
M%T5WC:KH+G7US:*XC)/]3\;Q)"K3. 7PJR.XX,,_\H&L<_J) 6B-JZL70J)_
M-7EH+I)GIC-=5W,_-?1U027P,)EY5.07ERA(D<S_JXQLWW>9;?N1$(Y+D\#W
M&'>$PSQ!.)BH$DF7=;C32*J)ZFY$M10SI8JG8F(.I>=81<0TNJ3JA(TIFN$5
M77)[-!)9G%X8VW7:9ATKDXW_7VE\PE$V?4.JZM;GZ?A,7HLI:VFIBDAGE=))
M@WMJG0]<2$\#[$IY 49(J$VPMUTU,I-6(2S_2[5S^M[DNN+I>7=)@/NEQU$S
MR)T8!-LT(:K*I/A8(!+CGT<2@066=?LTB08I-[8YSR>9+/GV/BV&&C0WCB9
M.5 TT4K#6_>I_*]-=$3Z TH S6%W(LNCR4 8Q&8F<5ZPEZU*"ZC&@H[ZJ0"M
M-1VQ@;%[(?A$JM"'"5PABOY&\.7=9MUQ<?,$ZI 6B@].L;21)#H:7DN2CI&E
MVK.;RY.F<:!&5HVL3TK"=*JC4ZVC:R^-9I'E+'*,;G2 <F*[UARZY\EU>K,J
M<O&8Z/^4 >V+:?1_L5[8WL&Q3D%8CYGMR>PAXU]OCSX:>YGJ&FJ\R_E$'O^8
M\M3GZN=Q#@/ AJ%L-,("G573TA2ID:E#*#P1D\='1B0XFY3P[;A4[QFSTYE>
MICLY+(CQB9V*]O?84PQ+<<5Q=0)5O:0]XGI JZIEV%%^.M[Y8[.H;G/YJ9H3
MAL^U"?6$7>19/KP$H3$6F3Q />9G8LB>"PGO;'_<Q(U^WB2\PP9\,E"JT<<T
M^QYA>8YG0M ?M]]NXK9O(D&WJ;@AWH\L$H/RV='MN]WWF[6[SX-N%Z#O.Y&D
M6?HLP??3T>YF;?7F$O'-M8E/A<#HF&>G3A#+V<@MWYRN#6I"+3?%7LO1\0X=
M'>_1T?$BR8LA&X]5I&V;VM$QR.$U##[!(-E6_@)9U(CA[KW 'ZI\3- /@N!N
MC;\M/UQYH9>0]GUZL\HS#Y&W\11R;Z/X*:"$_BZY)I:1X>C?NSL?A-<E-CQH
M1:IMV(;1)9X+",;/C.HHP1BR2R,21AY5',_&!C-&1<IE0R3B&BB%2F,$>(+5
MJGHJPIX9OQ&K;UD&=@P83H:&Y-T>GBF?%ZF,!MW+?HARG!?&D5!V=]DS7  1
MXT1DV66)4I05W\_994\F!>0]^.*"P46^:U&GO_3@5=<7DUV4K.7UQ7 .:?Q_
M6S=(K;2LK3==KDK6E>4^WOMPL'WR^6CW>"E=MH2;5P-:*J.F7U/_R;C^TZ0H
M)ZSI.5R(_TS20F;,E*J)MSQ!5&H#L8&/@>=?Q"_Q.[P>OI\@0PM,9.1G+ .5
M8IO+N' 2VDYO+B_'. -U(IX,+@UYD(+-Q=,2OA_EA1P"( WV$(<O@/_QE"42
M9VR0(&[@@^39I[I /KD0DPSND@]DD_%97L#4XZO8L.JUI3=:VU]$B,P"OWM%
M_WF\@GJ(U-9=-"([[#N!M_**>K3O4'OEBI;=]X*[/?7QQ^H$?1IL;O6_QS6V
M.CRG<!WG=/+EX^Z1<;*[\\?!X<?##WN[QSUC[V#G(;OP/>5TP2H6KUO--*KF
M+L^*3M=R3F\O7V_6A#9QDUZ5KZY6$]I4*-G$#=1SVK YK;(<Z5-.6*.*GI.>
MDY[3K>>$I[=I7!<#VSE+17(U0EYCB9Z3GI.>TR_F]&(T3:(14PC)%82\O/TI
MH53*INW/NG]\<.,C@B0?#/)S/!<<B:+,LQ(/ "KG?_6<UBF"JL\E/^5LQ+AZ
MNFQ%KC[%LHDE7!)CNA,>S+(?TY.%]I%#)."MR\\2.[+*^B"A4\YY?9#0<=#5
M'MLUG9/VV*[!G-!CVVY2J%TK>DYZ3MIA>^\):U#1<])STG.Z[9P:W^S.&4N+
MH6K>@&Z MSDK8HTB>DYZ3GI.OW(:I(7@XWSAP4X]E.H&E:2QLGX8W;IT<Q!2
MNX'6=$[:#;0&<]*!>WI.>DY=FM.F^($TJN@YZ3GI.74G<*];%MK:[],M@Z*T
M_;V>VZSM[S6=D[:_UV!.:'^_+5)X[S_ZQGXZ&.B8=#TG/2=M?-\3^S6DZ#GI
M.>DYW3$$XY]8&6Z1(7ZEAXR&%CTG/2<]IYL[BY(IA&AGT:;!IG86K>F<M+-H
M#>:$SJ*_T*;C9TP,C.-A.C[3^I>>DYZ3]A;=9\(:4_2<])STG&XY)^41VN8\
MGV2R&8!V">DYZ3GI.=W:)<0:#-$^H4W#3>T36M,Y:9_0&LP)?4+O\HP-8N.H
M;[PMV!A;/&D53,])STE[A>XEMS6JZ#GI.>DYW1HX= V&#4-(;<*MZ9RT";<&
M<T(3[L- 9)FQW3=V6#'6+G0])STG;;_=;\(:4O2<])STG+3QIHTW;;RMX9RT
M\;8&<U()_"*+F52U\ *M:>DYZ3EIX^U^"?P:4O2<])STG%9CO/VJ):5N.WCE
M.]UV4+<=U.;R^LQ)F\MK,"<TE_>1KSZR+"Y2,=&:K9Z3GI,VEN\S80TH>DYZ
M3GI.^IQ3GW/>QW#;K/K\M[.'-FON,BN.9:D8&/M]XU,^NI,'O5N<NMDZW//8
MK77:$"T@M8!<OTENHJZJ/9MK,">I<DS*<9H91_V_\F$TT*?V>DYZ3MJW>3^A
M74.*<7=,Z99"M?8T>(<HB^I^VX,7C/(R':=Y]KH0 X;=%JH "/7P]EU54(;5
MW,(B(.3)>/DMBZ(U5KI$Q/K5&E$<D].HE7(MVO_B<-/X_[;2(/(M)XA#&M#(
M"0,KX&%DQ=SQ/$J%E]C_)I:]5=]U5C2D<BK,J!#LN\D2F.)K-CAGE^76J]G
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
M"T0!#>NL2$5:]7.T@F^II!,Z]H0TVD7U._IM9G;,^)&RA=N#JD1[=_"54E6
M-_QG(BLL@R!&L3P4 FFNK!2+MH1$9\%$<O'UM#1+W0O6=7I[C;#U\&%"-3SW
M*KK%$2)[P#7-03MN6GU>7K:T0R6LZ^B&>G!PP3D>TS;*2:_MNT9'2H:^@1\J
M%H(-+LMTWI6^8!:@ 56;-K<)DI^P EI;.VKYC=0HYUWH\A2B>G<5Q#&8D:/3
MY9&J*1]/III'K2X9DQ&>"C<Z6+4R(*G .I_R]U(1=,,R2XLL_B=RD6#8^N[1
MP?&).D_^'S8<_6Y\.?Q\\,'X^/'3KYS$.'C[R<9>QQ8A'Z*4*!<"N<008%_0
MD4$=(J'G_=*!_[33>L<& P8 <R(NV"_CO9YVJ$N"$;0'LO% TC7P0%X]Y%GH
M?WR*LZMNQ+P^.)UT-N9UA3/_9<SK?-254LZ;*-BC:7A7=R=YLRC899LW%5K/
M+-)-!?,>'A].Q[D@*/6&H<"H4RJ[\;J(U*E%N/JEOC*7#O-D1\,^?Q$4/A,T
M_(PBOV\1$'K-R?.#0[KQ."]?3+LW#H3ML!"Y821LAV>P/(9GWCQK^7[3LHEL
M'0@YTQK,9YQXMX%LX!A\C@Q7F_$\22_YO%OPY@^>AKVE34C(-*=E_ZK;J]9C
M%V@YATNTG)7$^MY\1E<#@'7\[X/&_SZ&&%\0_]O5\-^[L#<&Y37ZWE)U;^UV
M[K"U617.7._AOO&2]2H8K&/E,*RX.MIKUNU<L.\2$N4Q(@;BH9^Y@M.Y(%QU
M]J)4D^7G+5?&-Z,MJR'!WSB:*Z'1)88\2T=_^R1 A@6WC^0S@><U6-FF@F2>
M%GPRQ%6"+ZZ)_:U#?\LGB/U]<*7AG0 B4-EVN*P?4[#<&AB\L2Q:.U5CV^!W
MEH0R>K@^_U/TK018'2.^$,UF8^M!<4]9D\^S3#>1!D&APE"K )6%83G2KKBH
M)C":%"/ Y(6)'#=.133NM4(*E<HJ-V$$UA2OY>A\)@/&.8^JV+1*RDO(%AFK
MXA,P; 8E"UXNS<S6^L8";AST<!(3]$H,E,FE4DXQ^74@M0<TM3!^A?$F"10#
M(2N'\52F(=(T-F2U +_+D.EK-U?.9/8-4KG!@:NCAP9^D% $IHC>:&?OL8>U
MF2C31;A(1]69&&B'H&*E8[D'LU.5PXZ$"D:),1YCL%#98A/8V:+MRYF+T8C;
MOLB9M90AZ/8OUK-AEI&,E*K#M3#  T8$NRYXO6R3K!Z-7 C0/M2F]C";I%<%
M8<_G%,_3=K7Q<K%@*0=QY=QHA)Z26;5(6IP_LFXH^%9P-BE%G26=9FC[P@X.
M&C'0NP7;8V .!L)5>Z:.TG&G9M*B$%L&92Y#[;\)/J4@)+]:>5 ;-:LF -\D
M$R3:RD6B>*Q*4JBAH]%7IB$<.*I(H*<&I@)$_1\\.L=/ZJDKO;ZLTK=5[%0I
M"4>QM=1B3JL$,WGXF\ZJQE-\RV=4$'PQSA\&B]#T:_)8Z[/>BK;MKM#VK8Y)
M%P]>'YQV^.#47DT%(>\I*P@]D9OMID>#3S.\G;;[_7C&_;XSXW[?D^[WCHSZ
MO0I.KGSYB[WW'1GJBSW48?()/"/&HZX+5")1J*J#C#KO]^4-0?,IF\*%_< C
M=\E.\IP^H>'*LY.(U;?HZGO-67TGO%FCM<T>[,TV3)=2O<J 79H5'F$^6NN!
M+DZ?A,][^L%M4@LCQK^?%B"18K,:(><"+,-UJM):)<J5-ZG3O72^FU*R]N8U
M>G^U\S?I?Z%74Z_FO5;SUO"4R/_-S]J0/VF?NMU>@>,ZT760@NPHZ^/Q_)(-
M\"A\GM!NLPJ6L084\-N]9MB>68%/[=+4_I9>O,[R['VASBB,29:.CT3R?UN3
M,MZ2_E(8O/P@38*$^<2*8L>*G#AV0RNA%B>1X]J@W%OBW^]0B;.(14S\A5";
M;&':5#ID@_+_MDS@#SR>96-XUL7X=389QOFX^G[+R-A0X%O-4\9&KROA^+[(
MA_*8$4;W5SH^VZF2BG<O\"P)5GB[.@4^81? ?;"D0O*A=/3$]C\OHW?YCX_T
MZ,<7>W\2?]O]\?5#^.WPVUEZ\'/;.OSPI[O_[?3RR[<_W<-WV\Z7GX-T_\/1
MMX-W7^C^M[\/#H9??GZT#P9??N;.EV_\_.#=V??#DSUG?[AG'9Z<GA]^V'>_
M?'O[_<O//^G!M[W+KR=?A_LDN-A_]^7'U^SO9U]_YM;!"?P\.77A&^OK-VY]
M_?#YXLO)V^$^O.OPW<'@X.3@^\&WH^]?=T+KRU]_+[^>C+Y_'7[]#B,XWS_Y
M N_]T]H?OC^#\=G[)P>#_7?[]@%]#]?L7>Q?5O?\Z^]GT3 >' Z/AE^'1]^^
M_-R^., YOOOS\LM?N\[^.WZQ3S^?[__D]I>_CH9?ONW^_-?/O?'^L77Q\61W
MO+_][Y#X/K,M9L*>Q:;#$L]D;N":OF^'MA,%) B<K3>^W2.>\[=7LR2S1-K<
M!0IOP2JW$DASKYP7:AJO-A*O"/$3-XZ2F KAN%'(>!+S*&$!]UW7]SCB%0DK
MO"*AQJNNX]7E%*_BT/;1?V]Z5#BFDR2.R4(J3(?P./8LRXM(LO4&**9'+5<#
ME@:LM0"L.(Q"3S#*0\=W2")"XMJ![\?"H]Q+1"P!*Z@!*]" U7' .F@4+%L0
M$<>P<2X/0<&*N3 C'C&3D-!EKG"=@,5;;T*[YV 7E,[@U8K<<&MCYTZB:=VO
M*U;M=/[T=O-?",#K#%,LL"F(W=CU8N8(&H>N%X">%=JAQT,OI-H.7">8VF_;
M@0(@*DE\RZ1>[)N.&_@FXYR:8.,3[@IJ,VIMO;%=J^<YP7UQZAJL>"B]ZJ;>
MS>?.XL#8":4>LP,G<*(D8B2V0^;QR$ZL, A#;3JM&8LWII/'$S\B46AR8H=@
M, D*II/'3.8Z+G6B(&!>M/6&AE[/=JEF\8UE\2065A)2+TJX<)+8"B@3,;?=
M,(Q1GCO:V%@O%F\9&PSD=AQ1WR1V[)A.%%,SY"(V/<N'[79BAP7(XM3JN8[?
M(19_KJ=J=?G8.UD<-W7YK#-6A:"#VK;PB&O;3N*2('$#*PIH%!$G]FVF+8YU
MPJH_VQ:'&W#/"VW?M&"332>VA<EBFIC,BCD(G2 )A;WUA@1>S['"#GE&5N3)
MU2Q>L;C+_9A$7A"QQ'<L+V$^_"".Q05W!&BFVN)8,Q9O+(X@3 2+0LMT$\LW
M'>Z#.N((R[08L0)&.# ] 76$V#W+ZY+S4[/X:EG<IL0/W,CV!?,='RQ-/XR"
MD,9"^#Z-_4!;'.O%XNWC#8_;(O1L,^ <_8:V9T8.\+GO6Y3&&"SDA"#%0]*C
M7I>D^#,[W]AO<NCUZ<82E+)<03Q*$X^&S'&H&Q([(I[MQHG#+$?HTXVU0JG/
M;5O#LI.$N,(WX\@3IA.XQ P2RS8]+R9N$C-B>\'6&\?S>RZQ.^07T:[/U;)X
M$!.+<Q*ST'$<2Y H8(F#N@EQT04>:UMCS5B\L36 G5T1$F(ZMG!-Q[,"DT5>
M:)(($-P#T])S+6!QV^K91!]@;BZ+BY!%L>7'+(I<Q^,>XRQR$N:%3AC9W!':
MUE@O%F_;&F% B,] @#NN!7P>)6;D1;$)O,ULER0@O_G6&SMP>BZ]MSM!GV[<
ME5FW1Z."I:6LN:F/-ZX/5(_LA @[=F@@'&+3D/K,=^W0]^W  \C2)L<Z@=67
MF<0:BE[..#$=GX6F$T>1"59E;'K4LPEU_)A;(?H^>X3>^R16NSX[R^%1P*TX
MBN,DL!S'(UXH+)Y$/+ #BU.7ZE24=>/PQN*P7!:$+*2F*R+'=*@ =<3V@>%I
MQ&PB'#_T&'"XW8/?-(=O+(=C=*0=!+8?>(D3!D$84IL%@8@LGSF$Z-R-->/P
MEL'A1XX7<<\S7<9!AD?4,:,8_HP#9G';=2W78E*&!X[7(0Y_9F<;?[ B5OW#
ML:HX5O[61QQ+L8H"Z7J):X6AS#,+DL@7?L*ISUW/LK2]L4Y8Q=OV1FQ[EDT<
MRP3+@@)6>8G)F!N!Y1'XA,:![;ATZPWQ>X&E@[LWE\/CR*$T(98=4.$XQ&:"
M.L*BU(I]'[Y+M+VQ9AS>V!MN AO'$M^,N0]\[3N!"30>F3);.'(<[E)E;P!N
M:P[?6 ZW;>9:MN_"'+E#73=D7( F2D/7<;EP;&UOK!>'M^R-T*.$>VY@AL(%
M&>Y[>,!AAR87B6O[L*7"]22'PS4=XO!5GF^X'3<V3O*Q;'*@*CC>YV#CQD7R
M-@[!/&I;<13XH>LG3N!%+"+$"1W!;-N)DYAK*V2=$.QT)HT\"!//M;@9!B0T
MG8!2D[FA;P9>Z$9@>88V)V"%] CQ>IYW[U"KV[+2&OE,GR\\."((7"\2B>_;
MCA>(0/C$=H@CN,TQ4D^;,&L&#XT)XW-*B._%9A#&!$]&T:'*L-J@QRW7]5W!
M7(0'"[.^5G8NJN%AD^"!QY$318RZ(76=*/&8XS).!?<IJ+21I9-)U@P>VNGK
M(8U]W_5-EMB.Z3BQ@SY,9M(H#!*;V"X/':R5Y?9H<&\7QV.!0V4=U0.IR=Z5
MK-_5XMSW>8$>Y-)!KLA2[K*!O).78]6F\SY-#M9OWO>HO']3M4 OF%ZP>W8C
M6.^3_EMV(]!'!D]0OQ_Q_S#YD.=QN9W%QU4$^'$^B+5F?"O->%=IQ5([WOXW
M]XC#0B%,E[L!'@U$9DA<8EJ1[]EN0OS8CK;>V#W;OG>LH3[[ZRPC/V9A>\W(
M*V3D_2DCVX#"KNW&9NB0R'1XP$W&(\\,2)SX?B0<R[:1D4.[2T=\FI'7M^"[
M9N05,O+G*2.3D#)"/69RYOJF U+8# *7FP[C/(Z"Q*-84\#N6+S=<\M%Y/^9
MI(6 M:U,!YV*N*SZ"0=54EB!+7CB6"%CB<UBSW:L)(@9=SQM(W01D2[;-H*5
MQ+;GBL3D88PIAT%D1E$2F&$<A=QAE%HB!$0BO=!;E?=\34_/-IJ3(XOX?N@(
MGU+'B2T><D[<(*3<=T0@;&TD=)63&R.!T1@VCP4F:!A@[;O,,R,!N@6/*&4\
M)!ZW"' R-F/0G+RYG.PS3"-UF<LY![LP")(XIJZ=A&%D 1'XVDKH*"<W5H*@
M7##"P$H@@6<ZB2?,@ 6)24/A!3RDEI?86)&]%_I=XN1G=K"@%GJF"51O:C),
MRYC(TX9A4TG1T <.R_R4;A*),.*1EP@G9 !7G$6![S#+C3&,3QL3702NGVUC
MPF?"YWY"S"!V*  7:!]1B%6<'0YRR';#F"=;;UQB]5SKWIV!M:>RLZSL,X]&
M,0$UPT9=Q Y\X=FV%<=Q0@GEVIKH*BNWK(G02^(HB$S/$<QTO ATD,BU3.H&
M%#MJB"#Q@)4MVB/ZT&&#63F)7$%HZ,6NYS@1\<,D=*EO$8>ZB2 5*VMSHGNL
MW)@3U!=1D@2^F4062F7?-P,[M$T:)UQ$KD.IE6"5TZ 7TBX5,GYNQPZZ!&(7
M2R!J4%H5*%DSID(0QC0 % JL*#(=RP]-!N1EQH$3N<3A<1#Y6V^(VPL=MT,^
M#NVM7-]2AYJ35\C)C:60Q&$0)R$W>>)CE&$8FRQDMDD(];R8 CS;BI-M6Q<M
MW5Q.?LR2AIJ35\C)C:$0^+;'8X^;PN; R<2E)AC[Z+X3+')CC\38SYTX/1IV
MJ3CI,SMWT*4+.UFZ4&/2JC")S!XI!#&WW-@$$P_L!)+89NC'OLE<&A(@D(#9
M,6 2[3E6E]HW:#?D^I8HU)R\0DYN[(0(BW5P#Q0+%G#3<2UAAC9W3#=)@M F
MGB.\4!8;=>X?U: YN;.<_)BE"#4GKY"3&SO!3:S ]TAHAA3XU[&#T&2^P\PP
MB9+ #6+A$2HM?M_JTM'@\RLYR.?J*NC2@UTO/:@1:U6(1=M6A(CM) XCUXPM
MXH'N01,SM$)NN@$8$ $G@E+0/5S?Z1%W54WE=06Q30*!QRPPJ$%@A2#0,D (
ML7QF>688<=MT0-<T QXXIN\XL>?['/:1 PAX8<_5900U"#QQ&4$- BL$@9;M
MXELA6)Z1&8?88C%B3-45I0(,E]@*:.2X6V^<$(V7>X<H/Q8(Z'*!>I /8>7:
M?K>MW ]%7I;&J,B3=*R#Y3I@OLH-^23W0TNIVTDIIVVO4F(S1F++M&W;-9TD
M)&9DV:$9!-2SF7!MZE%051W:<^_?MT<'U726=Q_3ZM2\>Q_>;<Q,XKNN9X%=
M:9&8FP[QN!DQ^,=S+==Q/!$Z-OJ:B-<++4OS[L;R[F,:BYIW[\.[C748![[-
M$D9-W\<(N"@"D1N*Q S#,/#"V V9;6&J3-AS_7L?;:T^!*XS!J!^Q@V>\0P*
MNQ^+ 7QXVC-.128*-I QBRP>IEE:C@LV3G\(0UR,9%UF;<!UP("K-NR#VJ[M
M+-Z>V:Q=M5=:QMQ*QNR=MVT[%H:>[Q'?]&/7-AV.11*P84GB>XX58)%MW]EZ
M VI#S_56=1:I]</NL?5CVG::K1^(K=MF7QA%L968D1L)T_%Y JJCEYA6&'N!
M;_DT$!&RM=_S'4^S]<:R]6.:?9JM'XBM6\43.''\Q W-*+8MTTF2R,3M-)D3
M1@ST,,?W76!KR^]Y5I<2E5>4%-5EX^)(E((5_$P:%;'X(0;Y:"BR<6U1Z+2H
M#A@4]28!.+UKMJA"IKHW3],3L2J]O9=]*G(NRA*C(#1^W0Z_9GK ".(SE_#
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
MU9S^H[[SW7X8V$N_MOIDZ7?7/9; @,CR6Z][[/7?.:'S,(.E-WKL+\Y ;J%
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
M#US3L9W #)GCF:X=!3R@ ,TB A[V22_P2(=X^#EX*60(K"Y3K\O4ZS+UUZS
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
MQ"<+@JIJTU)JTQ^+SB01J58AEH)0U( PY8 0H1Q,\"P:FG22<FO;T*Z2]]"
MJY"^ ^]+A?1-0'KNE,DY1&&"!LY,1$AS"CX& Y0HKZ5UW&:_M:U55^DV&4(5
MTIOKQ:B0O@%(+S@WE(F"..&!\%@@G05X95G3-3P++KA5=FM;T2[BNT60?F!%
M1IH2="B3<8I-]XDT&,\LB_2UO+X05%^FZ,"]IJK;-"@:(?U:9/1T0425G)8B
MIS>+)D3@25">)$@O$@B=&)BD(NB<HPO1AECBT4IWN9(MJC!;:T5OK@E10;P>
M$,^-!F5]MDHZ0,VP',R,"JSA!&PDWN5@7'"H84C;M6IE/T %<6M!?)M&0P7Q
M6D"\8"9(AK+S7 '+O!1[5@Z<CQ:\E3$;;[D1$D',NEJLG!C6OEKOFV(FO"QA
MS7$!(D*E:4R'ER[!AS&N>WRU$"&%YFCPM+Q$^SKU/I?C<C4NT0(SXDR(OPU'
MSX93/\G3_I,3654*6XK"WBT:$Y8)K6R68"1'8R)*"TXR!29S+:1@F7*]M<V[
MDM9PQ/U%\FW:$A7)ZT3RW*(P%/4/;CDP[@@B.='2 EM"IM(F0F.(?%9Z</6^
M,Q7)MXOD98J9K\&BN*(W907N&H&[8$7HS!ANKQDTB0%$$!J\(AJ,E91HHE(B
M JT(=3'24"N9WSSV7IP=+>XGM)T[S0S!,,,4_^'0EFC,!I3*+(>RQASNT%C
M9W]\)J_?B[A>E<&^R&_&Z4DCJKWAH)P=KW2U%%V%18N!I*@C"0FBH0*$Y1DL
M]QXL;B:H?BBKO4>ZZFJS<K9#=5RV%LZW83%4.-\8G.=F0Z!),^HX$.D5")HL
M>"H32)FI]R&[9'.!,[<U#G%_X;SF.,2W-!K&!I@5R3>+Y,5H!,\\4"**_H0;
M,_<!;.8<N"8B2.5B*';$____&4;9+RW"\@,+1SQ+.8U&*9Z=OG)?.SX-4NY-
M'E:D81FOQAJLAS.OQA)9EC-)S0Z,[KNOSV=Y9;_.I%6Y:BFN^KAH1% IK$FD
M)#V4XOM."G YD9+29+G-TGH4X+;NVDN<E;7IXGU ]!H,B(KH.T?TW(Z(V<1@
M$@62>001J05;FC,RGPQ/(EMOX]:VZA)SL>M11?1]0/0Z(P\5T7>$Z 5[PGO-
M:* !B,VJ'(*(8*6Q(*,*LF0@VT2*9X#<L\C$3QL/WU>B[PUB&DP>,[W^A@L_
M61;UP T^SGJX+U1$G<4H2L)3?]YJI=M)7T-_.NY]3J7(.TY#"DV]]RN+E+?C
M$6=FZNQOQX7_3'NCD],?;G"NZ.OE#>KO?4&!6H&A3MCFE*S@NMV/_^2A9X/>
MLH_FI]4^5/=&Q8W\+,W^OS,X%=6K,TE5W6\IW>_YEW-]$AU-6F<459*E3Z+1
MX*WC$ Q7@I+LJ"WEO4A7<]X.[:_:<^WST%0\WRV>YXT =;0\!"Y .L]!2&K
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
M>!T"<%200H@I$1.:U(U6=2NL(%^SV^SN$5XUXG4"?)YTBE(,G"H)(B@'PO@
MQAD+0?GLI5)1E=PL3KI"U*;#]QCAM^@8KPB_!83/O>>9LY2--+B%*P\BL0C6
M^P3,:).C\98J-'JUZ%JRKEH&-;MR^5*+%]S>-<NRAEJKE*J4[HVO^TG\:SJ>
M-.V4]H?S\OVE<O_.X*1F?[/_^^_W_U>E&_NX-TFOT^AS+Z29PO JA>''07.5
M1G>H6L)26L*;1<]X=E)$8C00EE%)\"J 2]0"#XHPPUWPI26U9%TM2(LB[)4.
M*FE7*54I52E5*54I;9B46NJ>JFIJR]3416<6$SJAB2+ $%9209,!SQP!DR1'
M^R66<Q$MU%-K)N@U,D'3X5%_>)S224HH?A0.$'(U';0&7:J4JI3NHXOL1Z&Q
MYR=TV'SGY0D9OD0NK K%4@K%NW,9H88QEST'IC(#02EJ%DQP2)I+IA7+2ONM
M;=WE>F5UHD*\$G&54I72)DKIUA-"E\CZO')?K(<NE]T8%S,_A=9:)1)!:T]
MF&#!.$G!TQ"T4LYX+;:VA:S;XCV!\HVD?5;U]BY0O)#>&2@C1%L@)'(0W&8P
MUG@@AL00%.5"\JUMM;8>717&+81Q2W([*\+7A_"Y1]PFFHUU 9B5"H3V#!$N
M&>0<M0A)JAC5UK;I$MDFC#^P[,[]47+CZ>CX.U?VU:VU[V7 KX9EJY2JE*J4
MJI2JE*J4JI26D]*2S9W6[KPXU>$:\V7F>GP2_C/MC6IGIR4-F'#.T<B")$0;
M#5DG!T)Z6MJ(!U A2D:BR\FYK6U]B8OBYWN>5*RV!:MW>[C\'(8;I\0IA)\.
MQY/=-#D85C O#^:YO]%)FQVA"6+IT"9T4F"%#D"$T2P;%J/G6]M4DBZ1%R/J
M%=#W M"WZ&^L@+X10"^X%Y57#O^ QQ<@F!;@D9E!&ID822PZUC9 WW:R[1W
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
MI'682,<+CLZO."[R07"J&!<)0K0.S22OP2<>@":CF'9!D^RWMMDJ8<$*Y+8
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
M2I'1\*R"M\'2((S/+GDI"!I=I2U?3F(=VF5ES]79<Z&9HG2:6.(@*I% 4,[
M<M0Q<Z:91<]=RJHT4Y1=SM>5?%,9M#+H@V+093R/QG*:A+24DBBR9S8PRB(-
MS)-LL\Q74^@8'Q-?5<*\ <(,9X1)HN4Q, >2E>ZS+"<PB9-2H#8[@SIHSA+5
MS8N=9Y>N4EEILM+D@Z+)90*N2G%/;4S1"8'ZI3?$4<.Y5C''Q%55--O!FY_.
M>--ZSDS@#IC-'D1R!DQV#,G39:N<8(*HTH*44M:E<N7&W?>-0VL$9&U95<XP
M&1RJ4C(9X;RP.I>2/33SH Q7O(9 [IHU%A*K?/ ^![1*/5,<1 @*C,\9"(K,
M42="U+94/U!DE=RJ^\865>.J&M>Z#=/KT^:985IUKUMET6\+_=^ES9Q02#$Q
M$,99\(81$)G0G*3Q4K.M;4Z[YI(3=I5&*XU6&EU7A(19[C.1E' GK*"616NX
M)\[@+#KGJ^':$O)<.)Z,MJJ,R:#1:M%RC4:#3]2"CI9X:IBR7!3+U1J%UNO]
M"3,W.8C_F#B\Z6D9RX6JG8=N]+$WF-V>K;\^9]/H>_;/<L7'I:AM+_P8BZQI
M5)-2QX72J,8-CG$*.H/A)(T?G2_'N? <)S_F"N]W-!PW97 ?CTKSI][G],N7
M7IP<G*)\X5<G8B'SGSB/$IA.KO[)PN2'A(PPNKDI^^$$_0;ZN]JD"W_+>!N&
M,%X38:)EAJ&J9X@)UI,8A%*,)97Y!\KHUNFO#D;S6JX?$_A1<I_ 97S&QZ[_
MQ1V/M_YQ?NW@PEF<]V6G;/M__0BO>,E3M'"^]_%NH\Y^"@<#O./'7AIW.SN#
M</6*;,O ]PIP2IG;I\-!PRZE'UKGM][ #4+/]3NO)_A&4X:Z]8_RM_W"8N-.
M;]"9' RG>*F(4DA?0T)N/$+Q-(ZB#CZA^_O%A_E90(BMJWGRA# L#G>!.<L_
MSY4_;N!PKO9Q>>>N9HV>3<;MW_[\O##QB(MF(F:;Z][T$"\:UG!HXSO="9=J
M+^.6.)@\P4UD.IB4"C"X^ /B=A_O]&L?E:N[UJ+^^N-$BQK*W?WG?'?_M_[N
M7^_DWC?4HO:+1O2)-UK1/__\M'>XUW__UZ_]]T\M>?_O Q(._QRXMW;ZXJ]/
MJ(V%KZA%'>_A]U_L__%U%S6B%_NQ:$7D_=L_V#OVY^$N7N/?W_XXWGOVB7U(
M-EI5VF_JQ ((ZB28I!4DJS5.)[XV;*;O]@;3%)\4;15-2\54=(IS*B*E+K#$
MJ#'49LLIU5N=A,KI42&+T33A_OUF=_?)JW>=%[]U7N_\<V_GMYVG3_;V.T^>
M/GWQ9F]_9^^?G9<O?M]YNO/\]:FB=;(6OML/\+.3@32E[V<2^^^#.3]XDEWV
MS#/.O!.*<B-LED&+[ 75PLNMI:!^1S!^]OSUTU<[+_=W7NR56?WUS>N=O>>O
M7U])VBU]C+>I<S0:?N[%A#0^21]'S78T'N;)E\+=X^,Q[D;C#E)[9S3KW=D9
MS]H<C(OMA,2/%T -&EECG,)D..IVOO0F!QV'GX;IN(-K!+&-^]K'(:K%@V9C
M>]3!N\;T.?6'1\V5<28^I0G^QH^&+G;**)O:\&>C*#H@+K?9.,[NCYLHLMDH
MC<?-,'J#F3%7UN7D5#$X[ORM'.)GY)>=_>8%_>7OG4%*<8S/C7;>"*>TW"N@
MOEETB!D[E5?C<# <]F>W'.+U1Q<>I(/_-3][A*I'&4JCL^($S.<4_Y]Q?$TK
MB<[._MG8NSC:T)\6*IX_9KD3[IBQ^4=O,$;EO.]FERQ[:$$1WGK<O#$9N=X
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
M!EMB7 M'Q" #6W^-W.*<"H'*EV)2=@7^- Z#.!X:8@\@2%%-K!#J,$+S2]@
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
M):;?]/;%#%9E#?#[7)5T:U52\,"KDFZM,EJI%DK"-(Y$QC,9![Q,\BR/A$A
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
MM/7&6Z:(M:5?70R,9]2*'.%V53 '1+[?P!)LW[@&LB(Q0TOAUBF:4(R[.A2
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
MK:,+O=47$ELV*].$951M2DOVHF/'U5U>VZ='EIWF<A.4V.-N7*MV4?1BM?1
MS;W9@;YOP>FJ;KN#4NOS?N\2(?HN514_876'_;'_O#[WO QVB4?@4Y;@$81E
MR43DI2Q17/F)R'P1!@^X9/'Y-'S5T^ G?ASR(&)%5$:,<QZS'*M8A5*\C#,N
MN.<]X#+EY]/P54]#%OD\ ;.7%1@SY648,9%X$?/#4/ "A'XD\J]3Z+I9Q[>D
M%NMP35!9%(MU;0TWD+<IBT*4Z&ZF_];XWH9DRH\ ].Q54S31=2KMS;AYK_/N
M^-.3.Z984+M[?1Z'L>\'7L&4\CW&LRAC:2$S%L1EJ$#I<!F&CQ#&LW=RO'=P
M?*:1@[JR]LW!_N'9Z,WAZ?][B RY-X.2G ;5+2)&&Z1MIP],%9N6"[JG@6LV
M%^[!;QR43 U'ORUQG8')2]GU"85VBGOAADP#<9VWMP5>!O/>S\+J=#!]IW.4
M#-GJIE<.%^1V+0[,@*RPT7(*7$*UM-GG<D$( IV&0K\$2ZD0N*2=*]NW]DJ\
M YDI8?3-'"10V5OY\7S1X9X<RAE<4=@&VZH-/KJ@%BND"HG[Y]8\JKQA[O=L
MCOB9J=+[E9(TE_B?@VZ4;V#!0&:#Q,<_[$YE_Q?.)Y^R;1 <?7H;GOL2M%20
M">8K^"_NI8IEB03G00H_X)F?R"#<>A%[X4Z\,3A&+KIM#6+)T)Q6X2U0V-QT
M='.EH>_2V)#AL_WH4F][-\HV0@&9\GG;I]#-S=J^VJ;G$45OL- 5+^*%JBYJ
M,;LD'@)8"!!H!I[8XY5&T,S.Z ^'$=K$77KYZ;8 AR($CG#N-7W==D)2%CC4
MX2R6]Q#J-S8W>T1[[$?_9?C/M;CN0  ZYV^6%_<+J<7@)_EN8;2-*^YG=?5A
M+#N^-&Q?9+!6IM+*I8/#!CYHM+K=05NMIBGZK(JXP#C@%-\G=&M,5&>TC[6H
M-9U9@:WD:*1FFUL,FHY5N1Q^#N%XI4G?3<Q)MJ#ZG='!':-H#L_A.BE<RWAW
M]P6EL%P7 _LP;G28GOP&W0S*XL&ZAO7;3F<O@R;H9MG68'?2J&T#M8V!O0GQ
M'5:FK55O(]KO:EI!<P]J=2%JV::="C 26IRQJC\0B,VP\"FD!ZHIOX:=0I5I
M[%R/5%UCTRGT@^  T\4W7:G4]!*7JL4KX'C:JCE35_YCG9Q7&-!5Q!_T3.J*
M3@X_#[,L]B0F9^,B9CR-4F3Y+IB,52QEE$6!SU<+VG()(DUX09S!#D0\R_,T
M\*(D*I*L4%D:W=TIBOM2-/YA4O35P>[IP5W+%Q["J"VC4,L&@9D%Q('5".15
M-FX!HI6H)4C@8<-U,H].6N> _CJ 5>I_ -0F\D54)</,T$\6JW_RUL#R?S81
M#RTL5K_LL&%NM^RSE%U'&C(<_C9F*TSONHW1$33JS+<Q4>0DCU#[:QFI['2[
M56A6N[X\U]_>4G\;/_#ZVSO4TS[\JSL\M5LEZXN5JSN"2^@RS]YP]U;K#5M
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
M@5'XZ1YGQ0;C7QM]U9V%[@0\[[N[[Q*V(\[RB"5148 "\',F5)&# BC],"_
M0LU\[.R;W(%TR_)N/&P5 +;@2Y77.AV5#MF!0HM'G;+0M,V:-Q5^>?3:X9\6
M-1E9(&=V1C(7HZ-Q45>O,8#_TU;[,UF(HR&[D*K1:HJ_@!7(X'T,=,&D1,OR
MY.QTZ^?6XNMA"!2!R\?S6KP':S;AO]+SJVM65-($FHQV<'O4SD Y$)2/&D.@
M+>=8I 3,MND38PZZ?U^@VJ'BL4;G.VP7!IUY:0@VO=E@U'T.6L(DN\[W9.TI
M4@Z^G)]%H5?P* >[T8^+M"R3U)=%'GG(VN-G7A"D7U/7O&GKU X-1RMFHW?)
M$# VI=R=RE>=.0!_ Q_0DOP\3%J?[RUX+OC1]7DDO3(1X(@KT J,H[;)P/1G
M&2_BU O"I.!H;-[ =[W]A:Y'Z$5*8.->X>7<"_RT3+A4H.+\T.=E&AKV4#A"
M[%N<I3W37(K^<5:#$-,-#1Y20_'O?3+>7Q__>5ZH)"T#/V1*A@GC(BU85OH>
M R7$XS3FTO<+"BC<U!_-I!0,U.6A'HMGCW3S45B"1^HI+Q&I7[(R%A'C6>"Q
M/!,EDY'',\[32/H<#)(LW0DV'@4=Y+F_7_H#*R6G'9B*QGT_Q>C'*1C2991P
MGJE,I!$/0UFD0>:5X-=_@Z:/+ZNZZ][<$VM6$2X-+!1,;TQF/;1&D-\]VL*/
M]R^6)V>[X1'\_OC3^_,@B;W85QD3B<P83U,?M&&6,@D6#6R?*&(OV'H1W4!P
M9QKDV.[2A;L-79W9-^=%O">+\K!>O/$H/: N<]_[W/P9'>\7_&C_\-/Q_JY_
MM/_G>9BF>1:"*O)]!9YZ"J94%I0A2,D@"LH,S.$\'*1-WGA6VOYL7\2(]V,%
MJ.O5^9N<.HK-=<%]D$H%-<Q =VU)_]3.FNT7I/ECM<?6] JW%RVE!JSD5#-R
M7&'OU0ZWL#%R?A_17JJ(![$OO#*4O! AW,0HR6109'$:R)A;R\30W>,/SY;)
M-Y#>WO&GB_/2A[7WLY#))(P9SU7!T@A,DQP\T,B/1)+':NM%.! KZ4EL-$<^
M#ZKWXX(F-_/SZE! [Z!W,6I=SK;WQ]FV$Q_!@(.Y<J;MK@[4:B:;7F3\EE;D
MINJM:8D:BUXP?V58)AQOX_A6.+CL0>/:+9 VI V6*PC<!!/ T%"5H:;K[@M6
M$@6=-');"3N,M O*PMG.PX?;(!N<-L&FYW!+4M L9J8F,E_">^;S":&)"&]/
MZ0NA3:^E@;7:KSF 4[,@&V> ]1O=!&XWHQ]6>GKK19^=22=J-(L&Z ,4F>YN
MKC#@V0+\X0=0@29BC^!DP?DZ;;6#J:ULB!Y5'RA[?'HGAVQ^HZ8LD].H5+HY
M]>?'.+)<%AQ,M# K%8?_$F491@7H#AF%99P4MW1(^=(8QVXW15-9BCW!GK+R
M^//3R?[1>93D659D!2O!Q :SK8Q9'L<%BX7RLC1)LXS'&&CW-RL/C7=L2\_D
MAW%3U<MMW9YPVX&];A-9LX1+>X%L9]M.CK,KK?D@:BH!;RE?P8R!K40#BLP:
M+9 -/81[26RJDH[J-;9U,CQ9Y&WK.S74D!R#UC@V0V.E/R216J(ABN8/[8,:
M"X ?;H-K8N>S6EWJ@/1P3]QAJ.(= 7FAM_4Y +D?!7X+GQSX[;5AU7D-IL+<
MQ-DIT_$ (7"?=HW(F;V#WUS_?7;T"<0*?.^MAW7@\ SXS/OK?Y\=3XX_%<%1
M<.2MU8!?X=M_NSSZ!.\XNX!G_XEUX##>@T\@KB9'P=OP^-/?\/_>8 TX/]X]
M#X/(%T*E+,R48ER$ 4OS5+((SK@7YG$$MNPJ J[@/ EED?E)6?!"Q:),4YF#
MD:M@E^) K2+@7K\Y>7WPYNSOT>[Q_NC@S[>'K[%X8WMT?' VTI;:9^#B;AW$
M#SM;3_A$A2=_GB>IBM-,"";R2#)8TH@)E:4LRX2,LS*%7S_&5CAVNS4-I]UK
MG;0T2876XBLKK&TFJ-Q\S2?YY8[6L<]7- >W0.H53+OI 6-Q\K54-=:/3L2L
M4;_8'WZ5XV8V$<M?QE.:&WWI5VJ;#2:7>22\QB##LVPGC7T$A\]K^(^TCS>X
M\1W"C?_W7*[_+>8[?I!M_+.WXV_\VTV/Q0ZW0?Q9C_W_V7O7IK:.IFWTKZC8
MS[,KJ=*0.1^<>U-%#/9+*A*QC>,;OKCF: 0"\4HB&'[][EE"($XV @%+:%(5
M(Y"TUJR9[JL/TW/UC]_C1I3!WG/!?JN$8200(%A9C/^_)5#FBZ,(E8E_0X^^
M-\A58<U6_[JTC>1\UNJL?Z;-U9F'L=DYU\3S!Y_NF48*6).GJC#J\R"FXVYU
MB..O3 I<O?JE.O;TZQ3/BO.3+KV*::D6.UOPA7[\B1+[>ZCQ31H"[V-,Z?<Y
MTN^_P$K?N>3TYX]Z;D8KNWLT;%3Q96,\ZLEYP(U;9J/B,:W3=%2D(?3WVU%O
M9G.1WZWFY/YS\0,=^ZD87M?3IUW3NDGX_SS9,DZQ?"_PW-,T_M52.D<,Q5IQ
M3[DC,E'CK70Q0$1R5P<_-LUVV%U!X-7-,#:GH>#VES\'.UL]UEJ#\7SYN+N]
M]5FT#S[@G;WN 81_N^TO'TC[[(]N>ZL%8]XY:)^>?^>_?^ZZ@]#=K,:X+W;>
MO]MM;^W3G;6/!YM?MD7K_3K96?O,6N\_D];9GQUX+O;?L_5AZQ1__VL+?J[F
M,#(1I1-2R3+$O?/(:J60"SD11SQF0B^M$-V4@MW(AA:@*T"W0$!G/;91F5P'
M:;C!UF!E<+"6D*@23>=%SP7HZ@-T[4\70"<4A]7""7',,>+",Z2=X$A:Z@7&
M3D26Y@WHIHXPSHG.YBC"^..X4YWP&&W?YS-WNU6KAH-<"C1BR;A'S#GSF;B=
M_Z):LA>%L5NS\-XSJZ-53CC*09"M%]8Y@WU(C#%G;LW"7R\B#,?]G.&X-V"-
MDB1_=5(L6'4/K-H8ML98=6.#>^=@>^_=WN;6SEY[K\5V]CYV\_VWS_897.^D
MO;6-889X:\T3N YKKWUC[5S*O[>/X?Y?&4Z&X(!1"DH@;F-"C@>"- M"!B4M
M=FII15S?&T(_DBBJN/3$>TP)&$,'9M&+*,!O-(EA)6.1J%<K45L?O@8O@]8.
M8@8O(6804B.7C$?1.$]M8"JR7'MG?KS=^!BXOC-W^*.<TRV0/Q]II6E.SU!B
M(L;4:\:X]M8)['"4*4$TSL$W+;%X[93T,A87$@?JB$($&X5RJTFDD[;(:,%$
M #WSN9J<<-54U#S61[W= 7K2>+LH\3T+S;E,@B1'J?2<8:XIT4*8)"03F%I3
MXLRZ*?%$G$F$#\9P@9SG?*3$)EJ,\HGIQ+&QACE08J::G-\\0/ER2KP NU69
MPO<X<U%>U)6,.);.R]+#Q:F2!T64CYR/N8HH@Y,&0TP)<43D.'!'E5,4I)O[
M*+@O$64-4*EUM_]_\,\!^/CP^7>[.VL?V";\W][J=MKO-[[OO,_G:_Z!F?G&
M899.;OK_^P!Q)NGD/7C](2$NHT3YF"MR(>23XR9H"GX*FRJB5"I)C3TUX.-P
MJ[&.5'CL-,$\:)Q$D:A7*U%[K:\VQ6AM9$@)2A$/P2,;M4&4*,RR.(D8;LE1
M/"*@_,G>SS1%#*_:%Q4:&Q98X,IH;GQR@<(S,P).:3)*LQ)0UDY'+P-*PR4W
MPFI$)=6(@S8AK;Q&D4E!F3=*B;SG@753J)MG71ZVZ5&C#=RBQ.=*3*P4COFD
M@R+<!&)#5)I[%H77QC%7 LJZ*?%$0,D",<ERC9C,M*#6JDPOP) ,GB:+16(:
M DICFIR)&NGP NQ-OCON@\[E-NLYC$R@([GURQ-M1]85?V[UYI/6WG$7=2*,
M\X!-2(%3D[EQI/82%V_^Y4'FPZ4WO_H5? ,B<%#(,,(0-P RE@F%?,A,"B'@
MX.*/'/"2!IZ]U<::B;P_3S117,ED(W;,"@B5$L'2X.)ZUTZA+EUOYK1*@5ID
M.>80T68N5R$B4AY@T1(J@A)+*PPWI;Q)*E6V<EZ+#CN;#2$!WSM(3H(U)'@,
M89=SREA*5?&\ZZ;#$YYW<E1%2PG21E#$N6;(2250=.#,@%O.I0I+*Q2B9UPG
M'5Z G9R*KS73[8Q.JE_LYSS1QDU=$>CV:K]H%/%>*IHP9TH;+I(&LT.8L4RE
MV\G>B^_]K##S>=+W3LXER[A'W&N2^WX89 ASX'M'Z6"A%-5F5KYWR9C=D[B)
MFA3 :=-,!2Y3,HQ%+ZB'U;&6R!^<:2K&^2FUYM+!CBP*H:E'DOA,8*X2,B%)
M1(,57"5LA21@G$V=<F)%2V>KI8$;#H8LTJ@D=U1HJZ*, JND* $'^V[ONFCI
M$VKIA NML([":HP(^"&()]!2%R1&@AN)I>6<8;FTPO%-_O"2N:X#+T=YV%FE
M.5X9U<&3,YF7',A+ ?CVI)NE13*1"8>X)A+QJ S2%-PLSF#1E)?!2)KSF*)I
MR,V^A ]+@M3F@'A1_QFH?_2*1TD5)XQR*Y4Q)H'?3A(!&?+R!TY:4?^74?_)
MX@-A:'0L(.EQ0!PGB+)L$"@ES;PD04J2HRS-FQ 9SXOZ+T""=-7[XX/C40_2
M$(_ZH#>7G,/VH <#/:O^\!*E[O/E RYT,/Y+O?R\";%>FY!J>-V-%>'Y85B=
M$.X[[4(Q"5.9!#_I$?*8)-APA6BTX!:J2) E*2#KP48XH9SV>'3 R9";W0-O
M$"26O-L<JOHS^'1%U5](U2?/,I(@ @X,*<TAY$L"M-R0"+\21T#=B<W!'R&T
M*?1-TIP74?49)>]&&DN7J:BW7_,#NNR2W7MD>'_/..6<1YR!T(3><>8('S_S
MHA+$S7Y^:FTXZ^4BWVD(V['8PNELX;=)MQ=+L'$A*F0PMXA3II&5P2&A"([!
MNL1Q)LJ4NHGQC#,A,]"@%\Z4%B@M4/J*TLH%2J>'THFP@AOO8:DDPCP9Q)T#
M*/66(8R-I\I[)J4 *%6DJ>6CCZ76!DJKR.2WJB',9%>TR8J^^K?GF0S%QQWB
MIFZD^Z"N4 _LBC@YX/KT/7SVEE'K9ZV3KR%*F'&I$+@L^3@X"PA<3XL 0).+
MVIB0_-(*%<LW:^8FF^:.>KU.L^ \:BVDBTDIQJ6..BK"..'1,V\)D[-L@UD6
M?+3@&!;<$"&LCP)IK@CB5DFD8TB(6">-P8%2*F'!V?)-A_7J@N?.J#G#,,VB
M^^  VBT5A@KNDK0<QD+!;%/OH\.Z6G0]7G1=%GT&BT[:H.7$1*HT0<H:T'+M
M!+*4&@0Z:,%3TI$% XM.EF_6W%U;=/W UM@O9YZ^Q,:1[4PGI\]IC<9MW=_U
M^F_M46=HNQL31-:+++D4?,G3]I[/?7]):^OS5V-5-%2"5\AQ!"=1,P0^([B+
M4E)#,?S :6G%+-\DPKR0XFD1ZSG-5)&$.R1A@ASJ;/6TO;;ZU3F!L10"^9C/
MI@NED?$IP:^,INA8PCZ[+7CY)IWBE7;-_6B[C5AU+C[OP5XU.0:X.>]1'[]W
M!E5G<7=..C\8NSO5YT=FL!\'1S&W<H_=TWLU.3Z'P'.<8A* [*@W:M_\II^[
M<L.E?A_W"*R"X(EOG0,LOOR*=1":' _O_LIMO2M? HO?(:*OS<_$O].T?Y87
M[9]W^Y>MX;Y%Y&!)]Y%-\)!O;/?$G@Z6?KMJIL B34[\M'.V4K7VN^TIYJ$1
M-5^X1M3O>[UP BJ_>A@V#H?V\%L'HNW5P2 .!W5L1;T]QM;]-GVWO_VEO=?>
MVL#;9RW<AM>;:^MD9^^;:--_]EH'_QQLTS\[VZ?7L?4#V\[9&]HBK;V/>ZVS
M#Z2B;M_ZYV!S;9_M?&F=[GS9V=L^^',/K.S))EA60BWU*CCD$Z9@605%)G"#
M/%8T2$W@A[C>BUH&'[7'1'C&N8[$4(\-1 ^:TP!NYHU.P^\W-]>^;/SU5]6+
M>G/K_ZQ_;&RTMU;;[S?^^&N]L?KIT_K6IP=TH_[Y,*X..Q$,84AD-EC%C0"'
M(N( 9D-&ZW R]LD%\I/?C>&X&S?36#076_HVOAIL, [)(0,.%.(J2>2BC @S
M1:+"VEIOYK!O]18X$WX7$"=63D/V+;SM]T^KUC4'O>/#8?8POIT+0>6/Y,\,
M3WJ-JG%L(QZ&&&YTL6Z>NQ^98VIPWO!Z\.#6UO096UN#D5W&(T,[=6]KNDP9
M>XH.S  13](NFB_\8#&YWV!+;^MZ=S%>SP,ZZG<&L7)]/]V?$?VU]G5>/3KJ
MV\[ CAI^5Y'@EOV^P!.RU1O"9"Q8I^L_;-<>^LH*@QTG]#=&?LLITJ?KFOFZ
M"AD6MFEHTC@IEUR,4?. DQ8I)8BY&#,Q,#%JYG)S]V.:.H5Q:%&CFH2'Q1;G
M-0G?M\_RY[=/-M?>P;VW\?;!.H$X V**#W1S+73:]/,9C&^_W;E>D_!NKP6Q
M2'MOE;>^_+/7WOO8V=[Z9W?G_3:'9^)MNL%VMEJGK8,/M.J#/-FVA9O<\AA%
M&_.I!HZ1M4ZA'#:2"/$*9WQI13'3%.+FJ8::]@<MC9 +ICT%IBGF%(Y:)NH(
M3Y$8D?F2;/ <6ZFM+YCV@IAV6;(JG;3!6(>2"8!I*:=:O#"(FD@MY@9C+7,_
MN2:1C^Y$52"M0-H\0QH-PC&AA$I8<IZ4H3SWGA'<&6JE"P727@[2)BE9%181
M X:!2R809R(@9Y-&29L4G+?2.@-NFF!-1>8&TV9Y9HV*957S,VMC/6A8_W^/
M._T8&M4V./P<]JJD^+@A7XZT6QW?[_T-ZW=GPF71*:85B<8+%IE2GG-,+6&5
M*T:TTY0S_;.JE8= V.KYRJT=]V%>_X9'[(4":U/!VL9D].E<(%A'BSAQ/G,K
M)>1,\L@Q[0(C)D:I -9D$U[7B&FZL,7/5I6Y=2XZ\#RT$9QXGCMO1(*5IPGK
M$,V4JGP6^[U@![M%BY]2BR=Z/A@EHY<:89O)+B4WH, 0>4D1<++$*&MIWC?2
ME-#?BQJ_6C46&C.7+3 /EFL0AN BY889EE0BEA>+7%-=G@@T @_*"::0<3*3
M'X:<#\84Y5,- OLD*<8UM,@SVHE[%:%$#V*)_NB=4>WLW:W97B6ASS39CV@D
MM<'D)E.<*&F$B%%;07C2N1*^(%8M$:LU&4-@3@DS3B%/+4/<)H<<%1;E9*_V
M6G)F8F[VVL1Z5AM8-4KH%E4>[S<S2S4)DCF1P/G0SAHP5S@R OI,L2HQ1 VU
M^#*&L%X3ZT) C$8*6AP#<H1QI!@V@5G!93ZR.:,8HJAQ;=58J<23<AQ;;'DT
M7D>9:\UME+;R0(M%KJDN3\006%-E<51(0.2'.'A7F3S(Y6[L1 K#52"VAA9Y
M ?I?W%'-9QZSR;"X#.\,ATB3#-2 I7(V.A-4"@3'E/E<I)D!%4_9.WT0'%WI
M\:P]-2YDSE['!.+8$60LH)-6&@,:,6Z<6UK15#0-GU5.HS;U(*65PRPZ4G,+
MMLMQ+@+E-&+G3?1$>.&(-MZ*HN@OJ.B7,035(4F7!(I1XQQ#".2<X\@(0I7'
MV*C,\S.;NJ^BYZ]0SY^!6Z_H^0/U_ J/7L+"28/@!QATKBPRGD<D:2!:&\:<
M CW7'#<)4?.BZ NV@_'WN-;IJ-_) 4G8.QX,*PZ8R:V,M_]G:W(C8['V,:9I
M3$ <5=I(+**67)+D!-$.&^F540Y@[&=D3EG0X'GAU0.P;+R6J][G ]\PRZN7
MRUF ;BJ@VYZ,7"+S7+-HD,&*(^X514XPCSQXG<YXD7=CP:%I2GTS;BD-1^JJ
MU]/PIIOHN"?@DN0$&C::<9V2##I2J:C5]U#K:38UBB+/5)$G=C>2B]B#QV)
MCA''4B*-,_F'\!"J,"L=265W8T[U>1H[[9C&#OQ39HGE.!D3-&')29HL%Q+S
M8J?G1KTG A(-3I=Q7B+E<HM8%Q+27'A$+4]4^N2L,K6RTPN[U4'Q"[8@>%U'
MYDJ+ACM+48+V3@?"-18\!6L]@(!*D=-HC)!T!MUN2AKI0:CM)Z,KJ96V-@D4
M/!&(!TF0Y9SE]C:1$\Q4L"3O"_$FE8_>IZY-.X;2V:; 9CUA4QFBM?!!8<XX
MU=PQG%3@1&J?N"*VP.8+PN;$+ENPBC@7$/4<(RZ-1DY[C:C!#',?A33I:7;9
M"FH6U"RH^?RM%0MJ/A U)U($E@2N(/Y'@E*/N/,.V8052D[9:!4UQ!IP-IEN
M@NE[-;!YC]Y?S\5#_:X#.A3_ZOP;;U"D;^7Q+3(_=?ML_ZNPA!.>,&(A)3#K
M0B*'J40Q>LH<]9$H_&!^ZLS _$($U9O5:;C.Q9(W;+7F%9_I>*?97O9<SZ35
M%\W5LS@..H-AE4+*#!TC(NJ*VWIX@[/ZP?34HPX!-2.C5N+!1,P_I4Q^*(?S
MB_ [T\+O_ K(>V]+_?[@F5X;=_&-(O\%H"Y^W^\-!K=U(^A=,PD3C04>L.DY
MC1-5;R&YM^8_? -XT>=SEI1GA"[3FE?YO3T>P+UC_\+3FE"ZQ]!$O,[LQJO,
M3S#"8Y#:>VHUYYX9E??&O%%2*>),F$%^X@>A764#7DG>XFAO<VL;MV%,[;5_
M]G?V<A?"U9/--8CC]CZ0G2\;)SL'ZWAG;1VW/UW+6QRT!'PO]YJ$^WP\J+H0
MPG.U#]H=N%87QGJPO?5QO[7U@5QC:(O6<V4]0TD)ASAU##G&"5(DT" 5,<3J
MI15&:5/6BA#FF1*V!93J\VA3'?2@6D?.E<>,)^FT3\19Y53"PHNH9G#0HX#2
MK$'I<@N*2RQ)=!(YF7-5L$[(I8H2UV(G G7:A@Q*I(EK!4JS/.,Q!][?F%<!
M?/B?=%-ZE76AT^"18\SQF*(%/%),&.XHEUS0B(G#O#A)M<.C*Q14+I.44,:0
MDC:3URB!K(L6!6V< TL#JYL[-4O:I%J6\NY7J\;@ N<NJUQ12SAX%XY:KUT@
M,M!$N9[%^=&BQK-6XTNW(H8(3J&@R$:O$0\0]6A+*,(6YY-6! )774<U7K"D
MTE;?AEBIQ<.(+1>!BI<%$0FQTF/JN&/$)A)XD-Y1#&+G17$HZH9$5RAK>.(V
M1F&19IY @.,]LC981%+B*@GG/2: 1+1IL*A1?%,(M6>KQ28P3T5T*7C#C1<&
M>RD$CEQ)%91.Q9^HH19?^A,N><^BE(AI<"6X$0&9S$-E )(E-M9ZQFJHQ0N6
MI7AKCSI#&,;91*("M.G?V.T=Y9.1, >#8:'0OO.PDY).$6V,99A'')V13 >O
M#//.@;TJGD;=,.KS%?9L9H,1+"(7L$><"X(L)AQY#[&L$XPXE2JN3J%)C4*>
MDKF8K183RK4!/\-89[C'VB9CJ7=8TL0U5ZYX&C74XHG,!;9><*D0)9(C#EJ+
MK#<"*:\%"S1RKNG2"F]JS&NDQ N6M_@KV@%<;-RRH^0N[FHC1*+)M$>2*7"4
MJ;)!$>Y$@(A'24%\\2CJAD572*LX52Y:\"B(YQ9QG$]4&TV1$MH:EGG[C%Y:
M$4W,9L7-5U(7]5-B'&1R2B27R3-3P!#\VB XSB?LA0^D.!0U5.))*EVK$[4)
ML60QXN!<0%@0)4J&X22"M"[O:-9-B1>@J/TG-=KWB&,6E][W&8[*%DR:*29=
MX6M)$*12QO-^+-&(2Z\16!B)K(HQF"1M%&YI15(VBR.TS]4#_042&8L+ ,_
M[UT 8-8 ,)'E(""^L#@H<N(! !Q!+AJ!B)2!@4NB5<Y52B*;@/'S @ +0,6W
M>L?QZL7*@$Q#$_JRGLK$>JU.+%>!KJF@Z]ND[Q*8=AYKA2P/ 7%#X)56$GD?
MF%=>:T_"T@HUM$G98SA"2T:DODK]LMY'4>H9*?6E/V(X\UI(AZ))%.5S1!"+
M2(Y2Y,(1%UU4"I2:J2:Y)4WR(DJ]8+4=6[VA[=X\[]]L',;A SW!PLWV]/-3
M:\BOEQMW'>;;<;C^W7>/\V2^,MZVY\+X_4G'S3O&J)$!.1PC8#RQR&A'44@
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
M31Y>62V"UM:EI$7BT@>M&,Z\0HX3SR"6*XGK>NON91R>#'@3C&GD$X,XG.B
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
M!\$<#OZVIUD(5@\#_*5_',-?'>LZW<ZP$P=KG8'O]@;'_1I5>.Z?8TSOI'4
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
MJW)7.*PU5TD&G9965-,P6?8]7J5&SR#N*!K]XAI]&8$H(8+ 5B&/A4%<:(W
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
M )1ONXVUZ..!@SLS,M:_+/35MU)O/,3A2:]Q&FU_)/"_T(G1@[9\JRJ@Q\\
M(S]V>R#Z^6$\K!O,334:^/5V;84W8,)C7C7;$/A_Q^L%TW\Y]R<VBY?]9CN'
M@TKM._WS6XZ>IYJ,: %)X#O]82ZB..F DMG#4Y"5BDSS_!CGY9"SRIX+Q?*%
MT:G0^[YH;6Z ]7/JZT$/IB(C*DR1MR.A'.GL+2I[<)2-+*Q8[[C?L-YG/JG\
M:YZ$RTYF64@'H]6']4!YT2_[#XQ6O8+,_"WX>*5#MVEJXQNX4GT[PK]*"4?R
M [^,C$&^Q67[]5M:JO6K[FN#!B7+^'^;E694)] ?<@TFX!K+C2^QPH_#2CVK
MIVI4CY5G),O^Q1-5;1<J&S5ZBXB+1Q@;,U#XX^YPA/2-_WG&#*R86:L".:?>
M[<Y_=[$_^.?0?C''FWL>QK.SN_.EQ;?I^NGFU@>R\_X#;^UMG+7I3J=UL/Z]
M_7Z=M YV]O][EKW6_9/67NNTO>?9YEKKJX:(0E#AD==<(6Z,A+C?$,0<5=I9
M:4/%"K;,;_BJ8&%&OLC--H"5R(-L F#W,SAEN;D&,/EJ62PZA\>5H;D".>>*
MSB0@P5%OT,D?>%-9%M#)WT\Z8;@[CJLFOG6.4/CR*]:!JWL\O/LK$UZNC]FR
MOA"8O4.47)N?B7]W^^/Q'($10*X?[3ZR"8;[QG9/[.E@Z;>KB W@/#F%TS[]
MRG]<'ZYXRWBN+=I(?50B1 H=21 1%#DX++A13GB'O6:9L>$_5V*!&<#!U2CV
MD]\%)Z@;-]-:3!%$+D!$NPHH/!SDKDF=D7,%_N=6!K<MN/4?W5[&@473?M)>
MV_B*)3.:T,P *@."<#0B#?., A526V:2-C##$3#R*,M(_S@N3>4/3(:.N62A
MDTY?T$7(J!2K2.3"C3^P>]GD@^\^R'Y7CHT#1$-@8T;"4WW'5N)3N7O=2P'*
M'X.K3#B-#7!2W]S3=R+\AY-UH8,CS_P"U:K8'>:L:X\&\<WXQ>^A,SCJVM,W
MG</JR:LO78_2X2Z7VK^,1PAP7DIP?OWSMY>KMZYE'$;O*;%L-+OS;;Q,[GSO
M1Y<E,"!R]U=_=-D?OP?H\32#I?>Z[$_*->:^*F.Z9QH)=9V>*EN1*9[ISNJW
MN7W\7-PT\?@+4%XT=@LF7=41P+^YAR3,I,EXG:?GWGK^\"-DBSV;,SJW,]H!
MI,M4U'L&+L+N"S* *C5X'@UV3QN71]D>4T_YRG9$;WO"U[*G&:AA+F%!,+/@
MGA%# [B4#EL-\V"M^[KQJ*Z4-\*^"PD\W]<<M'O#MV/Q6[N0OE>RS]G[#N-A
MK;T/I+7US][.FL?MK7^Z,#[1.EL];<-]=]:^B?;[#=%^>VV?<^]=I[WF3^'^
MW]M?VOOMLP^D_>4S;ZWMG[76-LCFVA]P[WV\#>. ^/'*B:8DN+0^(>P,1=S#
M/X;Z@"P%./?&)8CKEU9,$^N;J:.Y/P)18.I5PE3TBD=)%2>,<BN5,29IZDDB
MG%$O;8:I!Q:P%9AZ3IBZ/*OE/ Z"!H&PQ@)Q3!-RQ%,D%(V:!4N=5$LK!#<I
MJ1-.S2@HFQ>/\=.PE[>ACBH%S3FW:BMWO*4:+_85CKIPC\(L]?Q>UCC5?@/"
MX,7X;^<@-MG%9_4PG)>4#=;/UW+\>P&UJ4"M->E[&4M"I-0B881"7,> -.>
M<;#@1F/N256QJV[EMBR\-*]%WY_072GZ_O+Z?NG$A"249H(CH15'7!&&M(PF
M\U-KDBR57JOJK!.;64UIC>AJYL6)R44FE?-R7KY5%=B IIW8?E@P[OQZ."T_
MCKGR<@%>73#TOIU<KH)64Z'5ATGO!"<3*!44:1O!.^$R(HLE02H$F^GT""9B
M:86J6=!AUB\U5!3[I9,I1;%GJMB7;H@0C,00//(R@AOB+$7&)8LL '7FOV4\
M6%!LUM3\T0<%ZYI+,?7V0;9Z0]N]K&2ZL=_]F-S)XXXJSC.4O41BY7T?8*R@
MU51H]7G2#7$"; VMV@9RB;BQ'EXEA0PF6F-,HN!Q:46PIJ*S8N6>EU/+1>OK
MFEXI6O\@K;_T40P6WDIM$",B<_,1AHQT ?Y)4M$HG8FITGHFV;QH_8+E4?ZQ
MW?/C!1?'K18K>S(-G]5+N"87"[0Z7I^"6%,AUI6^YHQ:)YQU2*1(<H\!@K2
M5U'+Y"6U1E7)W28WCVEZ6A(E]=7AEW TB@X_7H<G.I9K'<'QP$@'RQ!GX'I8
MR^"5$S:R8 P.+NNPH3>=CGEN4/8J<B+-T0'NU/AW1H['PD=.+^&4M.-KH2UZ
M+@2[TOA8$<$3MP$)XCG$38;FUNL8$<ISY"04CASB)MJDK&1+BL[7PXDI.O\
MG9_H;D8CB\EPA),5B)L0D16&(<!K:90/-$D/.@^A![\9>M14Y\\=FVM,$OGD
M]=+L(Y=[7.->#_R8&[S,(!?TT.@$%<"C3H[.T334XW#H?$_8@B5P-PZ']G#$
M,/:(7>>%2/T\;Z0T087SOM<+)YUN=_4P7"[7R*LJ+M54+M75M@24A&2P9LB1
M&!&GG"&3F$",*1>%#R1:B*.4;"IYLS2_I'-?@TX_;R14=/J)=/J2()_+Z)2R
M'#$2?6XUXI&-3".G;*!$:F8UZ+3F37Q+WZCY3^_6W^'X^YR+MJJ^C__WN'.4
M.5$7ZYS@7'@=XX7ZNVL/AP!3Z^.U*O@T'3Y]G_0Y7-($$Q60BR%WH<Q=ZH.V
M2"NC"9-88Q(R%8,A,^B$-*>)V=>MT"_F<A2%GIU"7SH<GD@KHR#(J[R=+"1!
MEL*ODB@?B1 L*9$5FLJ;W>E?1*$7+,'Q=S\>V4ZXH+<J^8T:>AK5$HV)50H<
M30='IY/^A?3>!2$M(C)A\"^80(XPBP+7FAJEHZ< 1[*I94W"GY+2>#W^15'C
MQZGQ1)\_:3 6VB"?(JBQ5QYI\?^S]^5/;21)N/]*!V_?B]D(2E/WX=D@@AFP
MEXF5&-MXO/ +4:<1%A*KPQC^^I?5.A"7#4B )'H/##JZJZLRO_PR*RO3"D2,
MY0DHA98YT92O&TH70XU?611CLN'8C=]B>S!3[MGRP=&SD(J?Y).,7QBVQ:O
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
M=ALW3-T5;;VFK,/E^?FMKP[5$X>QQYIIY[C0H-E.$AM<\M)A(MC:XMO7(:,
M,]3IEA/Q!IA([.9/C;H-HE*@BVF9+W)>V-7I7/3'7-O8:1=U>UYD;KX^Q.\<
M=XO ".SI:;?S#9X1/.UB#P;5+?:B/VK#P+XT8V^]V&G[6OG%8MA.#_X&Y6Y^
MB^5$%+^LY2^6[Y<)<_\LSHZ:_J@ _"B;C]MV ,K1ZV><*.\1OS=[($5??G@S
M/+K9T.V_=B<\NE.MR%1_^G%&3P.&"RS6E7&MEW]VXXEMMO/-1X;-?K/-5F:(
MF9T40#/:_:*4@>+*O8!H=6.VB_D9.N5[XPM,>,A=5QC>OU9L3JQJZWP=IN5\
MF$O5*TZ[\5NS,^BUSH=?ATO=-H3^D>W#Y)T"EX/WQ]T,@=_!4W?+\:?8S%^V
MLPYUV81[Z"X6J9F97W$>;7?(D[,U*SGR>%J'R6ZC:;_ER8MFNWPA,]4L0;VI
M_I$@G-W;T^:RA)_&;DEO03>&TSU\KU9,MZ#L%5]B.W:S )2Y=H5-?1C"E3F#
M.?"H^1T=-6$%VV]>D<W\<E8_.S1>@^L [#7Z(!"7(B#-J4541>\Y34GG+<_^
M43?&D91.>3"WLA\;-<RDQ#+(R*52%AMOM><D.1)--+>RGRE7)2_(FS#HGG5
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
M*\Y7P/:L0K:[Y0\%,3QH#$B6*-!:+@32'):'2/!Q<I94%#CG1ND:OUF7ZP?
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
MB$%>@JWC 2=D<(8"[Z@7-.F$?:YX<\/D_=_2UH'H@4%IMP=@\JY8.9"5T['
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
MFVYLV7S!W\8=7$L3/_6M$?W EU^QKM?)SW/G5V[K+/P23.4MHN+:"<BIGWG
MI0IHIS#7P5!-'3<::V\<#CXWS*%1)G9(A%H;?^NH.WZ*4_L%Y*8;[5=D$SSD
M&]LZL^>]M5^ODCC@:],3_] YV_B7Z\(5;WF*^S)%0E^,*OY"R#^G3ZQ._WSB
M3NO_B;U>C+NGN?<BJ-Q_(I#)WN(T5/<C\#L]:EQ\_=[XO$-VM[Z*^KM/N+ZU
MSW;?;5_LOOMP<K!7A_O_#C#XX6OCCVO@=[+-=O>VR?[Q)[Z[]_7L8._]6>/8
M\_T]\.S>';3J%U_/Z^\:QP?OWF, O[-&3ANA1AF#&4JFK%.C4B[J1Q!3FC"0
M?Q_BJ,<%P$D,F]DLD<@H88*'(,&@JGP(7@H6.$ZP'EZX&QW8GW9=KZWH;LH+
MW>EN-7N^U>D-NO%5K_'QSF$"/XQYY9'5V ,G$@(9L'J(49N7+6##^?4U-HX)
MYF6BEFH>)#4\<>FMT4H[(F2XOL;_V=[\N/WQ5F_VRM_3H'6KU_ASX;HZ4 \>
M #4T_\.YI]X$JT7T)F(L"#"^N[S3GS_@U?M$3J5G)/GH)1<Z6LJET'GC3% 6
M55A;!D?]<RQ:64F @:2FCT6ROMDJ26-9!2&S#J KG4&WZ R5JM/N 0GN :UI
MM?*__2[<_;33'1&93(\[P%.Z1?S?H'F:ZXG4AEA>[_3ZF>?D:Y6W[!6V9$9M
MY&W; \7(L97.6'5'P[)?NG%8E:2\-%SYO(C?3YO=<EP_PI$@'2>"&0G<'TB^
M,MXP+@*.C&$<C#K<N82/*7X-$^G?A$'WK-,-O=B^C\G8B]V3W?0'W#QSP%<(
M*?6S0\TE8 <QB& @SMR:B SH$@J.1>!+(1IBUC8Z[5B< \&]C@(YFO.CM;3*
M)Z.PM)%ERA6T9 98N"-).0XFJ5K+N:WE[OO#:+$A7C/$B(V(@ZZ LVP2HE%A
M:IRT*LBUC5[\%MOE:O:N+^=(XS]V3C*N9*7MQ;'.C[P@4/022_+*PS)'T.T2
M;TY_)@J!&I:+#!/,+- "8F@PFCELP5GSUKJ?B$(>[WWDX$-LQS/;RN+P^H2
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
MR4;@DAC!4*D.#KC,SCNID$9%F]-[+F*Y](DR7S>T_F[WK8=)L'E[>G+2:QK
MN-[V\1@_^(QOQKT_]_KC!)R:;+.W_<'JK%3@G.!T<P)*!V(2_DD=CREJ+;)9
MR9YI\UN@U9WM@<L&L*/^91*-&\XEQJQ")HQAZY+K'\F$471=BU_1R4O)7Y!<
MHM:UN?\>:6Q=B%_0=@P?UM[^]M-L.[8[.DR#UAS%U@Y;M</6<G78NJ?\E46F
M_0GU2+KOA+2G-#>/G*W6J"=+%2#ZIQL>MEXUV<73F7F$A?EF8O/J9*BMQ$/>
MT]%-8Z/J=2V76]MI]O>)PTEQ1SBHT1 -B] [G4N]/T*+XG0P;CW:SU\?^/Q8
MW/0OD/Q+>8]G%:,4RF;JGXYRPY=YT#_ZJKS#KXA:^ND0AV6;T87+-SU)[_+C
M=8+[MSLO=#=\(E[F$WR&4FVI<[:S]X]NY^,F7O.)[K[<DN]?QM[[?[XYQ-?P
M>U\==:Y[F8^VSTJUI?V+3=;YY_9YY^7KL]V]U]#9ZWW:X?_Y5+S4G9<XQK_V
MOUR+"P=<M6"D((X:2R!#(-::1(PR)EDPP6I8VS!M)M@2Q6U41JJ,M!PEX2HC
MW0LCS8+).O*#S4F84,H[.R\)"!J(<^ (BIELF/?1E/IPNLW53X>YWW\LV?2[
MIIM7-HRS+'KN4[K',]#9Q[OYZY]OOBZHTNK[D<,;- 9A^A(.W?%!:LJWC4W!
MOL?1-'Z38>LW1 PI5L#O-9NV9M/^O.'WDR%-3UC-NFF$3T7->DC#[UH%C-T)
MUVT?;TV8[E5_\+1CD!Y*%POSUF&(H*S/G$A<90(R)&(--R0YC8ISQA<S+5G#
M]]<K?(4B,2MM+<_0EM0ZK+3U<+0U,R%??_G &9(3DY8P!Q&)RWCB6*9$&Y1$
MDD7%4ES;$&U0:HF(ZUY,R%50K)?E'D]>P?]F4:7&+BR-9YO:WR^[PU".%EMO
MW"C5T\)G[GGXJ_DCQ9;#AW('I=3[$<JN64W74MN@]5N)C!K^OBQ.A!5*B[XQ
M"GV1;+<Y'02?)+R(IX.R&-_V3T]7=7.\J&^F:]J\69B 567C#LK&UMF_]K9'
MG;=%X=C\$''1=*ELJHUQ!*Q4Q.6,VF/TT2H=58K(MN*K-(8*FGL!S2+9314T
MCPN:UQ/0;-&=S0]&66^I-@3 ,0+)6F*YX@BC"(9Z9D26:QOP3=P\>07N!DD<
MIXH:[M%4*Q[>FZL +7F?!O>2@ X+,<I4\RZ*][_3(,Q7(R&\DLM=R.7+O$1F
M(4DPT1)=VGT#"Y(8K1BQ3J2DHK31<93(Z]PLA_'_""CX/Y4X?BUQ_%C2=26.
M1R".F5:RN_E!ZF2=IL@=3%/42C(G/NE(1,RX3$(K*"7)8)W2RAUW3=C^V[6,
M[;N],I?_.OEZH?#Y3OK#;N/*:M)INY_3)#-U M*YJR;ILG1VB?/#?N]T=/LE
M-Z71/D8.\2O"U;7TD;F?AY<NXA-D >('R7U"FQ,?]X7KG;GSX=K?KJ8/=X_)
M_!0N.OJ-O_O!WS9N>IY;4O&IYI:7?P "#RANC4S!)HIZE$II[9;K$G 5!,LA
M!072),=!29-=,I(+Q. O2^&?]7<=#E.ZY4"FXT:G _RWYN[O=3YH38,$*HG-
MWJ.&Q21QR@,)B0I).5-&F3OD[I=\'_NX73''I#UMC3G^J_3'+'NDW3H:+WKI
MA'E34LVX"^9*M[94:ITQ]B,)_9JN"VY^1;=(?;=D]D4>EBN4V/R9Y<CO3_*6
MB]=^OOGK,^[TN-FDS]U+]NR/)A0OVRY!IF./D>_U7 N5+3S\I38&EJN8XS<U
MN&EVQLO3M(,/M7>6>I]3!Y_P\,DD;.#W'^"]7O,.W^GM7!S0G8OW1_M'[^C.
MWO;%_D7L[O .WN--=_?/ZU9S!ZUK?.Z7^Q?[_)W8??E:[!R][^*]6.?CSL<=
MOBWV+P(JA-N 5O-\D*!WT2B5(DFR^/&U=<28($@4OK1-ST(85](U*)/WE*[Q
M,$7(GO:Q D*-5Q_@\V"[H@?NG?4KR2U$<E<:F5H#-+ELB7,V$LC1$JM=)MSB
M:F;M/1-(<M V\KXJVM;6*W?E,5%[K#PC'CL<I%29;"$FZ\PSF5'"<&LRDA@+
M!'#QB ,!)&0+CAF>I+ E--KPGPZ-KIT:%F0RJ!K9\V&R5_W3026RA8CL2ND2
M#RY EI)0+Q0!0.7,!J6(Y993GWF4"@J1"5&[X3TTD<FJDCTC(NM^KAK98D1V
MI0M>2D"-<X8(8QV!0)'#C))$: E!)*5E0HV,MYG]Z7BUJI$MU#OK, U2$U=1
M];+EHS/V"^ALLRQVY;0?XK0K+:" @S!1)<*$*,']R:&5&0WAV7II3#)>T\)I
MLBIG#\QI<_T 3R8;_[&5M9\["7Z&U/<K-+G*=@NQW94Z*=$Y2 HYCDKP!+)W
MQ,0,!"0PYS)U.?"F4Y/^^7H#]0STWH!:H/&BM5UBE-)P5'6\A>O=KQ#3O3N>
MYLVEN/4EX$?'H6"5]A:BO8-YVLL)>! J$Z\$+><)E.!*.N(SA!23]T*6]NUM
M>4.;SZ^*!E3][EXP^6^DLM(#X+/KG:82M'RMM/M/-X&^GZB_VK_TU\_/4LN.
MY1(=3[P(UP,)AT_SPH$GYJB2#HU_90DP(8@!F8B5/'!!/87([JL)]+UCYQ=V
M+[ULGG135M7]=U::Y<(T=WS11?._&^Z0'?-FW,!R^SCTC]*X2\CHL#N(K1,W
MN"(\OIW;<JTOY^-E^_R%TO#L&"5B[H;4\J?=7EGMTDBG]0]W?- ?M%NO7 ]U
MPM%A4P]KWPV:/]JM3BG:]T?K7Z?>]\.GYLU_]]QQO]W:2U_<\(_6WJ!_CA_K
MAL/N@3O&3[K1H3MJ-T^^WQ]\^J.YIM,?E!NU6[N'W?YZ"Y]G+)!Q,O"!\#&&
M9:)18H\.483//>&H/YYY4F;^O#5*QPY-]O76WF%JG0R*?,=7SZ:WPT_W2V_$
M8:NI]?55:Y?"K</N<#3$:Y$*!SC3Y4N')\B,.#6M[,)E=E/Q?[?ZQVGRG9,:
MT\/6\-0/1_A"U_7P:OPQ>>Q6PIOWC_ N/AVGW!U-]\VD2G4S#X=NV+S2P*D\
M;NP.4A@UKY5ZUI-;-1<T@\37Q@6KCT/J-2E0DY&D+R=X*7[7Z"REXY*RQ9IO
M* >0[<OI/#O$A<%O_8Q_G8P+8..7(JP3?K1\TWC>2JGLTQ-\:\(]OZY.TQFR
M$.IH-YDOU\M!(@C3F>N5*C,K*H%^/--PBW4NMC]DR3+/(I"8K2  2J-YP3D)
MG(-(&:208FTC=S^/VS0.K_-M [282KDR!%^KFW&'M-Q@4*IO-LVRNL.6FVP!
M-RIMM5*S2=9;.V7C%P7Z=##=<*YD^4WV3+$URT8Z.1V$PP9XTZT4)WOW>PSY
MN'SX9MJ@^!J_7V69ID7Q__. 5:'E(N55)VVVRPAPM2Z9[E)M4\\/-*+S<NN#
MEP"),4MD8D# 0R)>\TQ2MM)D+KA2"0WS]:][^K1PI_6:C.SC20KL(HO_L[5U
MZ^+_[.+O;7W(PDOC@B:L9.% 9DT^CB(F,JME-C:7]BG?7WQFVXTT760#A.C!
M>\>EY1)\5@ZD"SP%S5%%]]0T&\!,-X"I&^#>-\#'=Q\,:B),1$ZHCA'1;Q7Q
M(J'(M([Q9"7^4&4#\.]M +/>NBHENE?[3AZZ03QS)0,>MTFC=+8&Z7,Z+HZG
M<5?*HFL6(ZOI>X\JXZB1N4TR/=[P9) .$RJCG]/D"]9;O[C"PS4[O_P8;Z!:
MU>'CZP_1RA0S16M=VD1 B4R<]YY89[4%$Y71$\!W<8WC9D&I39S;;+2WV@'3
MP@!20-0:E\D(R=WU*A"O3D>GN&-0&>L>G<XWGAQ<V6F^T:-P%Y5O*]OS%-]S
M!X,TV4!%:_M&V85;2@8N5(;A6DO8RRH,-]8N^>XT_)KJ#9JO4R-^I'J#@G5@
M/U9GX=LU&!C\6$V(;SVLP&%"K=Y0JS?4Z@VU>L,R'=/44YC[/L"_[@&;1BCM
M]?^1WB +HK(8GVCUAOX9*F8?]_=ZO=V]5T>[Y9J+S2^[+P_X[LO>4>?C(2IK
MG2_O/W;H[O6:A_@L[X]V#G?_>B<[?^T#*GL7G9=;L/MR'W;_VC_?_><./NNK
MH\[%:WFM>@-3%*S*FAAJ#('@.;%492*<@RB94S:*<H8O]-?F0HU<JM4;5BE>
M:379;N^L7U3!RG*+L=R5\@VF64D5230\H&7K&3&!FG*HX#(([662A>6 _C3+
MU7"E6KZA$MF-1%9*-U0J6YS*KM1OD%;B?"9.N$:M#;16Q$9O"#?&Y108E:Y1
MV$#<E\)6=;):OZ%2V14J*[4;*I,MSF17"C@(2SE+J(_ANEH"+DEB%+5$*5$:
M %D3N&F83%6EK!9PJ$Q6F.P'Z0I_5+I:G*ZNE&F0.FB(G!,PT1,(4([5J2(Z
M..#*.2FH6]LPLA9IJ$4:*F7=K'Q=I$$_NN'ACYN0T\6N3+80D^U?+3@38I0R
M$>8\TAG/B3C.-6$Q42\==\*H-60MPQG_HZI>#U^>H2;F+>V);TW,6TJ#O(J#
MA<1!N.I1]-DYQ4B"$%&[S8&X0 /QT;L(W(#*L+:AVO+>*L(N6Z+>U]WH%DIJ
M8_QQ>UA=AH==;U]UEEJ'+K:.^ZTR965H*%R&.!LETZM)Z+H,O^P/6KE[7%*L
MILDNHT,WFEP^:IVG48G81=R%%*]EMMRUF5^#RU+XJ?1FY89[L(::8#V-:$PI
MSI/*H@0DK"V\ .;1%N WQB]+&3S\]T^Q0(IX?<'LNH!F)GYM%/6?_:.3=#QL
MEG;S.&X=G?3ZYRG]8YSS5W(CA[LE&GSOT!V_/72#](\2S3M_U=)$6G_<G+)U
M]_W>-M\_>M7=_ZLC=UY^HAUDZ/V_]L7.Q3]ZI:%H9^] [NR]/O\ZTOI_>YV/
M[_&Z_SW<O_B$W_?Z2^>B=_C^8Q"=?_ZGA\^,#/Z)[;S<IO^]>$T[9Q^\=H9I
MJTAP'AF71DZL#$!2=(X)[;2-7P5:X\=!AD1=PG7S4IG,E%12.HK+Z0U<#[3>
MZOS[7[O[6UNM?VSM;+W:WFO]^U^;.V]_,#1Z:;)X;XZ^_N[<E.S?DT'_<S>F
MED-=!*DNQ7%L>=>?-C<ZP6W;)(&6O(4C][%?FCU.\__29(L/6T<I-7PY#6#'
M<7PN"<6#]']/NX-Q=/IZ:PM%3K<(M-F%R+>S+TSC5-/68CV%?S*W;GOGU74D
MOQS/Q)]S$U'@VW%?RN VCW&6>_-O#O^=!E.X+U_'X0<'\Q:@^J2C5%8+1YSA
M)=\JXV^VY%L!,\I8YF7,:QOBZW[!_V>2ZMP=M,+IH.0_-$DQ4XX<YWVG\<8<
MGOJ/39)TOQ50KW$E77SD1J>C_N"\U>L>=4?--</UL0KP5_IZKSG<U5_&21=Y
MP8WGDHDQ*:JB2J"T=M0&9P*P[%FRR=[;QIOLK4''C<(APNS*^^/]MIN;-Y_S
MMNN<E=,S[B #IT1F%!\0@R4N&T] JBB82,DV3>YOWG6XHZ;,U+AY]!_#6_?>
M;$L=N9BND.;PRAXM66 !Q?U!R=R9R^L9GO9&RYM$?,M._+,_Q(<)?=25+^;,
MRT?/*7QXA>5+\1@R#VCH9R("9P2\D<1Z)D@L1;]"9AFE[]H&X^M?5W-=G8SB
MNA.^LQ/.RTY0+$9$)-$BI%+@4A/O4?@)XZ7A3H%S:+\QMOYUL[_52B^NN^$[
MN^%B!W<#KGB0C!(>=,D>T"B$-'7$<J6!0D:THNZ#9NGW4XUO<B-<MTWNZD$0
MJ^5!$,_1@X J:V,L;1XW&,-'2,>AFX8ON\/0ZP]/!\N3COVQ,\76Q_=[[R[V
M]_;Q.[;I^X^OZ<[>^T^[+P^[N_]\?[AS@??"OW<NWGWIO+V.K9W>SM[.X<['
M_^UV/KXYVGGYFNT<O8;=?V[#^Z.2MW_P!?\6.WM;7_Y[L?VE<_9!)] 6LB(L
ME*"#+ TQI;*PTL9$S:D7&:X["6CD4CMII,$%$1RLE0EM$=3=I1,R^>M.@C]W
M.YWMO<[6SM[;UN;.R]:?NSM[VSO_W-KY<WOK.[Z"&PWQ[W__M>QQR C?H&@0
M"=E#>#388U8J.DNU]6%M27P2"]9.>YO0H"ON@VW<TC'-I:RNB)ME][CU-IV,
MQCG'W,[YDW.W5PH<M?Z<6*QOTDE_,"J9^J]0LK8,^?]0XR\O%=W?M8;3F>A.
M9J+U6[$7UJ83L_8[OO.YW_O<F KXQ/VCIJ)$[ X'IR?CFX12K;=8&M.*7L4C
MTRVYR<6=O;W7&IX/\5&'C3HQ2KUT<EA*-TU>;4J(#9K:%<?]5BHNH.+D;KS;
M3<FRX\_=0?]X7%9@7/&LN,U1S+="KUN>V)V<X+*/[6M\K]2[R!F-\13'&DQY
MG/+Y\K 3=]#$,.H/T^0FDPN+*[UY\C*X%-=;LX=##:5_Y0EQH$=EOW7[I_@N
M2LW/C4/J>/I8QVETUA]\*H40AOW0;4ILG'5'A\VHIO/;E+\JF'.-QVO^K>;9
M!ZC*?,8GB.,*4-U1NS'8CLI8CHNJU)N:<LW@R^W+<">#:NY^AH+\$M9-/;=4
M+,O6\!3GK7&(X4V*9RQVQTR1,BIAHZ: PW$J:^L&Y^NM58/(YK"IA'BY'X_&
M RR>P.$)3E::VL;3^6[@\QO[O34\/"T'7F?'K9-^=U(-9;;)2V&Z9F//[VJ?
M#EQ1E3XGW&8'8\-ZO'R3:<6_1^-R@![G_(_6;_QWW-D'KK'%3T?#XO@L2)G"
ML5R,JU"JKX2FD%XJ*U*\2_WC>!I&C9<4-TT!^P"W),Y94[LO]4[&-TF]\S+2
M$=ZC];WCH+G%G$RA4#C')_UA<R;U F^&G_R<)D4M)N?0<U=-UI[.+G%^V.^=
MCFZ_Y*;*'8^Q35X1KJ_-S]S/P\&L#L-!(GZ0W"?2Q#>]<+TS=SY<^]M5+."V
MGY_"14=_4\W1;XCS51'/WUR!*5E/ 87@$"AUCB;D5%BQ^*S*+T=]M#W[@X;(
M)^@K8N>2R!J,3=]!-+L>+E@\;TY)N\T10DCC8I^_P>^%[+NYB[?MN3,$(\(M
M-'=I6+.I1QGZ8W*=8^[N8![F31FE0?_TX!!!O'H<.3YU.3H9(5E<SL:<_)C6
M^KPBDB;G-+@L^"AXX>E)*1_5K,3\I9-YF58/+8?3I\>78KK<Z-J%9\DC>:35
MF\7-7JEMA$,]*[5.<?B?QRK*> =-1?L-TORJ]&FTHZ+U3*\=N4]I[+7]2H27
MMXK>,^B?#"9";2:_<?N?#!MI5C2UN9.)07<X+H][>CPYI&C*R+I287/L!KZ^
MX T4YL94;M@=EPXKT0B]ULEA$XMPJ?3-(:/=\J<-(O&:<KCF4Q/H,$33L0EC
M<,W*GTWUO/[Q0;\ &X&/RM17.Z^9 I_:XPJAY^/JNI?O!G?:U/4\GFEO$]]%
MT0$NG\^?#G$MAL,9PAN7>?=X^DRAY[I'P^:8L5<TS&FYM$8"EBU_767X;5:D
M=]C/HT8WOM0Q)U?_?GEL>3XI&81WFJ\8U&COZWC7Z6,,4O?(GPZ&DV):)^/%
M:I2(_O4'.YDT%'"3#7)0_C@H!U!EI7&JIKON?%:[>'+U<#JKS4<&Y;%0P3XN
M?S5!6^/:K/U&*RXJ""[+\#0<-G=O%L^7"<3Y[KI>\UDT(HK9L9C3\"$.$Y 0
M7KP[/AV>NM[N8/LXE]-@G*=M%!2[@W_T1X=;7\K92AHND</PX9T:I0Y=YV/G
M?.?C)NU<O/[ J#),<4ZD+HTOK0S$E3^I81 IM9XF5#'@.X4*0W\X^K815*C@
MUBBI]5830W63!^[68.:'8OZO4=R^9.]+2#V>[[!$T?[R:-%%?/:;(0Q.4[PD
MNHF38O,X[O2/)V?L%8%C!++.QT\?>!;<..$)+^D 0*TE5@1)>&"*18XZ?N;?
MKA6[G+@96]1E+\P)WXF<:E22L;+42*&5 =!#GHI?0NC-Y:15X$R LW-Q\(%F
ML(&5[#\3<RDH \3ZI G/ 0&568HRKFWP=5@]X-P(F%L4U+&:?"F*QJ)XTF B
MQ:L=)J;=1J_WLYA&T$WLOL$8G>4F:#"4&O3M2='A<0^+ [0*<DK#L4&3C@_+
MHU[>N+$0SU%B7GJZCI(KATG#]<>$>6N[:30P5G+3S [[RO!J--S)/,[->1G6
MU*_8GC?&QK,PLXM*.-C4OSIVJXV5^J^,KJ-BG14M_NILS9DJ9>G=06./E>">
MIO3FY8-/;;;BN(ZH[.*#?K??P?*?V_RK.S4NEW LWSZP::IOX^J@==4_'956
M%[W+P5P>OB!T)IMI:JFV)P9TL2MO%44-Z%!NH"4VO!>EK@D(O-X9!>71M<XH
MQ:K::>(1=_._RC/\>] /*35=<?9P(_X/ZL&=B7VXU7CYGK&,VCHK\1C1)0A&
M$.<#)0">$<=1J</_A/>4&DIA;>.X?X-4FLSCA&%/9C/=.ID4(6Z\*:67SL11
M,Z;OXGJ8OE&\ 1-7R*0Q4:-LS;Q$W\T<623*0ZU6E <\NRB/M^F@".8WT_/@
M90SMV)_ M,]W+O8O=O=Z1[M[_WNXS_<1ID'N(K1V]]X)A.JG#G\GWN]]$OO=
M:S#]N"\0[G+WKWW9.7KU$2&.*N(GV=G;DG@/A.KKB_=[L;>[%[O_O>C [LO7
M'Y)EPDGEB<NH0T+RF7BTMPCW7*,B%1P+XGJLA)0&&.<^>VX@&XH&CL6_LM?<
M>:[R]=B.MUO_+($=35S'FZU_;>YMO6PA\>Z^Z6SN;>_N_$!TQ_>?X-H34\Y0
M/@2.GX#(I(U(3B+84,Z.)%N-XZ.YS)'B^ST8']=TC\?BJ\P-?H6;-)-J#B4O
M#R N';53_^S)J4=%I!R@CDJ_N<91Y?#=<#HL!_L("*3>@Z)XC>,1EE&ENNMD
M%2$P<UG/G65?SDKC/SXY&;CNL!QW7T9.3 YV;E5'IKK+A_+*8^DC_Y@\Q#M\
MAIEI3)\=GVW3SN8'*.TON.-$Q< (<H0G-@A&K%'<4VZ=U*AV#+M?OM8[IHO9
M+&\Y56H4B4M(-"=!39>/HH'@WBK!"<,7M^+BBIR3:IU?=O'H'A<-^ 5Y1!V@
MI%IP]<?2J &P+LM<C/-^B^XW8[)V*^%,C_FM.93MN>-R0%2,SX/3WMC0+&\T
M=F0:)P[/X#ZEP3_J0OWRA6J.O;LGKC@23@<%0W=9K+'CH#<^PXNMS]UQE%9Q
MY RO2K2ZIK]R3<=KUJS!Q]/AJ#C"&KQ-- 67T^C\ID6X/8JAKL+BJQ#=R$T\
M:</RT6'=[K]FHI&:1D71:HU2.#S&!SGHIF$3,K6 JELG?O&)GRG:31R0^W(#
MJ4S#K\8=I;]6S5?.'-D^+L> *-(:]:0QMS;?_MGBAA)&V[_ZX&_AI('&6]*Z
M=)<\YH%%$V<PF,3VCP\?FBS>[O'M=MEP/(!?4+3@^Z;9U.4T-<_&DUC*^TRF
M]5G;:&+GY8' ]\_P^_#9MS]0BP8R38($0RF!9#FQ.DKB<PA6"\ZA%)$?G=W@
M*)ZL\J3__"^T'9J-]<<MW_#02N_D87Y06YM<78S9;V@:DT]-INQK,7GMDTTI
MDG&7U4&W<=XW?B9W<( 3,)O]QE,_CN$;=VTMN3&#2WA,U[/=VBJ1C2>#[C"U
MWDY'\%LCS>@?6V^;7]@?OT^J 92UWWH[O7CJ]!E>]7"U\*UN<P304.^WO4&C
M_N6 FACHF7_M<@[&Z^E.4<:,WSE.*8Z]:T?=X1!?(64J2M&OUN3!RXDZZ>>,
M7S$902N?'H?Q+#;!AF[XXL8]-CY>GF[D]@U+W[ZZ[G?=@M_=?NT;-LGMFZ(Y
MJ1D.TP20FU?D_![*^>D:;OZ_[NCDC[WI0GZ]=E>69;I6S8'O9,K'/>ZO:A*E
MU?UPV-RHGW$PDY=1A1@VU<:FZL0=QEW"],Y2KU?^O4$+*6DLN ;A2IK5.)+V
MFMMTJN(T63*GH\-2RJ=;)NC?=[SKI,GQB['3]O!\V&PI7(QR?%\VWKA_\5$:
M-)MF'$TT;(Y8N[,Q-YIMLY2EN^ODRHF*598,O_*/INK&*0(/WW ]_*+QD"Z'
M_]GUQA[X/PJ(3]PX$ZN)M,6E'>!]AW],8]_QXY?[]8\)]GUW-+G$I]%92L?E
MNA-W/@VS:!:T6<(R 1]/$?ZQVSSIG8[JGG%6CUG9K)[O'LM<.\9IFC0XRE)F
M$3P%SR)^C&DJ8PF"8M\ZQE%730'UF"<3:0RF5,BID2Y%[[AL-#U,)=ZEU\JN
MB"Y4*!!C8V?T.+&N1#*=STN*<5Q1B8"Y]&%/*756_6;2U_RRA,ZX]-BM'VS
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
M(T8[31-C)D2_MB%,F_^\\Z B?'D1'I-T3'"A$D N%B9P'B-P%GC&5ZOS8&7
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
MTVVJEZF67D7X/0OQS(OL9L&D#,(IZYP,U.!.0.![F:LS9&7 /><,0<."9@-
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
MA'/IT+*@*,F%,41+(X06 :7[_>5B5'0O+;J3=3Y2'9WW$E10+C@/V2D+UHL
MJ<KO%8/X3'X;[F*()6!0!X$JNJ,$T1R)SJBQ<1#<"%U:J$!;\I].7ZCQ!S]4
M/*T&('S7P*!>\HS\Q!@'9ZAQQI06 )%;GNC"Z555_7@L;MJ?=Q](RFDILT&8
M T\@"$4<FI$D19VEI,GB*_7LXNFC6SG@,>B4P0BP:&+P[ J\2Q:+X*J&/ZX:
MQ&?JAY):6<D]42(9 A'1[5+IKJQ52M98Y5@)?V1M [7KZM-%>+)6A1P3M\%"
M5HAA[0 )/R2OLN"+&AA5?C\>N.?<!YE:IT5&T4TU_LA<$>^8)MZ#HRE)!ZS&
M'CP#=%NG@D"%7!N5P1IC+1>HH"=/$>6,Q2J_5PSB,_GM-4(Y4DV4%HP %YH8
M)O$'SRG8Q%BF<@GE]S,(/?@?-XA-]D(I/=H?':9!C4"XK7<@:(8*)RH?FH(-
MT1M#0P85DQ%1Q$63)RL_/2H_A7D7@F9>.$ 5)%*/_!0I)9ZCN9&5-)3'#!#Y
MV@8S-0#A22,\\P31 M?,>C#2>LML#E)(X5-.<)?8Y@KC!X?Q7(J"L-PHQXHE
M8=&2,)8X*S+)N'>5E E$5&L;PM**X2>+85QOZH)TG$</B7&'.$U6::=L\J!U
ME=*K!>_Y.@>FQ(EX3E2RB/&2">US3B0!!16"XK0$$4';F&4Z@JP O^<4!>$D
M%5KB& -P*:T+25+)K009D.(KP%<,X'-1@D9Y-+ H2=Z+4JK($<LID!#1\#(
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
M-]_L'M'[GNUL[^C-L]>'@]]?[U]K"84%9/;<L)B@5O/FC@4A([-!)U=,-"'
MVKJ#ON=\B;*_&U\UOOI,S"F(C-S8%," #!Z3T;:(*$R2V=G0^&JU^&HAYE1X
MBB':S(B<JAO46^:3Y QS42&KP*%+_])]Q5M+J,97J\%7VJKDDW*80ZQQFI!3
M=(A!<2XQE=CX:L7XZE*_<I$T9BB9"24+ VX=0ZLB(U4:N(",HACB*\[[<JD(
MZV$=KVL]H7Y:XJ4O D+(.3D!10CD&*S//@8@$]/?5C5KYVY^%<M=Z0FE#2\*
MA68"?&(@HF&A%C(41MA@% @ V\[=W']TTS9P67JKB\\@D@E(9A?IY::$8K+W
M39%9+8@O)OMA<MJ&PFI_90;H+'/(+=-99W2&@ZG)?M*;OM++=/"F0?QN(9X0
MBI0&E0,'H00427DT,:C"O6L07SF(+]18]P"JY,0L:,$@9,5\T9EQ4$)I01:J
MS\L(\0<:UFN%"W^&*]F[$(Q#KP* -]I)'8.,+F;,%B$W>V5%F.Y*3R@1 <@4
ML8S6E909<)&AUIYE$3S*G -17BM<>/_1S9U1D<M >JV!HDFT&1^0TY_*N(2W
M17=39GXQQ!?LE91]Y+%6]^%.DC(C-'-6)B9*B<%(C+XV4Y!"];FYJW.@#>++
M!W$=;1(DP0,6"]P4M+8ZWGG,$3)HV2"^8A!?.!)C"T34P&IA:49&"K)0K&&1
MK-'H8^8RJF6$^,.*K;2>4#^I1"L6Z1UHQ7.&*#WI,,*:8+(BE2;EVR;I-4OE
M5W'<E9Y0T>0:%N,L84#BN%+KM'K',!H1A9;!V-0B*_<?W9B+589>4Z0 NDCD
MJ%RI;6P%:3BNN5U7#.)7(BO<NQP$X]$;!CIQ@GA13$64*:<2HX*U=5"\KX1K
M$+^W$'=)\!A%0@\ /(O@L("P3@NM)834(+YB$%_(LD^URXW*S$:HW6M38,B+
M9."$XUEGEZ-;1H@_K,A*ZPGU4_E.I<1-D1IL]J"E"B;H9"TOD+HB)<U@61&J
MV[E:7UUY(Y)@*FO+((G$L*3,1.!*.5"!U)T66KG_Z [!2NE%=H&TF50X&L=]
MXEJ[PI-6+;2R8A!?,%AD,KID+YB7)3#PLS,XDLF$I,)DE8C+U]:EZI/.TQ!^
M?Q'N(D\AI>(X@!'&9QY+B$XY'J66[=3*JB%\L88NEN)Y8:ZN'I2B&;K:D]X5
MK&I:UD4L(<(?5F"E]83ZN>:*E"YHS$8H"VBP1I2+=-**%%% H[N5HKLK/:$B
M-PJ],\PD0S9+,)%4&X$LJIR$ES'PXCJZXV*9\EX;PN^XS$D6QN0B2(-)X$FO
M53E&8;4W)OG";7-(K RX%ZR5(&3@*G%&FHMFH$ RGR.P; /X(++LLMI;!/6^
MHSN@]D64Z C48(WTUIO@L^*.<\-]D]^K!O&%=&Z1">2UVT?4G(R4&%@(G,0Y
ME@!!6:0?2RB_6T^H5CR_%<]?&@$!VF0>P&32#B #.*D<E\0@#DA2I-O&HYJ
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
M^9@&\3N&N -I;$J*M!W(,7F=(7H?<Q)1@E0-XJL%\<7:"\KJ(,C"0QD4 U&
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
M#@Z>O;V6S^DE2N.39AHC,$ )S!7M6?*9TZHJ;O4WJWC+FN9T'VK3/>WT/E(
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
MOY-J:)+-<OCA46^1>CN7R?$D5Q_:[>GB>_- [F G+;[, ]Y2]/P7?UH=T'-
M)K511" IS'KGZ21=1*.EU35A0SRZP9]VOJ5NOPD@.Z=-R,5:!<9EEZVH:G".
M*J)0INN\X\\[[_P0.FF;8+X)MFI']YA3M([Y&(A75*Z\0EHAKRCEKF2=4[<)
M/DY87. 58H[;[('O[;[4]L"=[0&UN?>GR9@+CZ1)1%ECH38P+,E5QSJWD)"V
M")FD_I'YY!;H[$*RZ69T,'V7#\DNFSO7\G$B9?-30J=B_$+TN/XUV;-=W7"S
M\X;'(S(\TS#B=#3NQ-CPZ 2'XUEKD!J .IQ)J'F8:V;IQLO%/Q_B>;"H-P]R
MY?0)E;BS+;O@UCQ\E6:F*UU'#T[GHG!V?++&XR)=36;3AVI55WN\1F\[<S;,
MTULF^SE/)Y^0J-T+S$S8=--PAI/+<= 3)YDF_GBO?V[LSB)IB<S@X80V>9W
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
M6ET7%PP$X@!2NFSJ;%!0QCE]!E>&Z/3I]!F5/@-=-)T^FSKW6?/,Z)Q%(A/
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
M &XBE(57K&1?K9(7E.S"Z<@Q2]P]HB,YP)6W*5M2>$H O_"Q? @HR>2#CPU
M#-!9AQ@BMK(Z^D@10P,P:98999W<O,R<G.K8J+9TG?H.M\(AM4P]FN%D[\_*
M*'Z >AC>[>*-!UO^5/B?W;IFCFVMTA=1',]+#AF=0S#OWD$M0,JNAEN0^7&C
MU*+#TW1S>.+)9;YG!5K&%_Y*7$'I+7"X>!).DKI.,)?:=X;VP=1\KQ%'2"RR
MYT!L">8;@H;4]1(K5U%ZOP.V:5&1_><)O.S0=1=6'S30TR :9DL&05&Q=9+L
M\L?VPVWSV=1S%]DW2QU;ZT?"8#("$Y^<7.)FL:/K'64Q^9[I-]&J.37()CAV
M7:0[#$<P.[VGC#NS[ BE*/V1@^[-'1FY>TZWECXV7)'CZ<$DCJ\IP&QG1-^P
MQ9/+Q7:5RRB/7;L[WQ2+!CQISC,'"VH977O)Z+,HEU/#HM3'KF6\[A=]>E%P
MF7"S^+'KT>=W(I7I5!*"8]=E\VN8Q*<PT%'6/IPIULU*,#IVW;-7+OFJ>[ X
M'7S.(5;@9X%#SXX0=^;W,1="MT\EQ-/5AB^^@!"$_R6G)!(^[[-AH^B4(;5C
M\8%2XP54RJR@A.*H2_UC;!&^Z<<V7=[$;O([P6 6EXU9 =*CIY:^0N_A+H>?
M8<TGJW('E57ZV%XH[U,7L:^;)T0"]X*S[7 '3A]UR35:)^J1.;;$?GXB-E5,
M%MC[BI_)([@+9F)+F\V(GIT-*<OFR%O%\O)D0;IFGQSQ&HNC=^ -+S,B#GD!
MG$JYI@VBH]?IR?%='UL#UG5FC/SEAYYZP.ZHMXAV1&56KB#U!\TK1>,>CW[@
M']]G /,0;#)IRC*'ZH,&1XF EB] F2PZ@V&,\3B1;W6+379VYW?L\2N]MM$S
M';$2X19?#DF0'#U=DMK&!!$#N!>QS1_L*GZ<ET@IR^?G 2E.['#U!;'QEU_^
M%U!+ P04    " #PA%-2/!R#,L,H  #7M $ %    '1Y;"TR,#(P,3(S,5]C
M86PN>&ULY7U9<ULYDNY[_PK?FM=!&_O2T=T3LBR[=4.6/))<W?7$P)*P>8LB
M/23EY?[Z25"4K(64N #4<75%A2W)U,&'S._D!B#QU__Z=C%X\07&D_YH^+=?
MV)_I+R]@&$>I/_SXMU\^G+\A]I?_^ON?_O37_T/(OUZ='KUX/8J7%S"<OM@?
M@Y]">O&U/_WTXI\))K^_R./1Q8M_CL:_][]X0OX^^Z7]T>?OX_['3],7G')V
M_U_'?XG!T #4$"X#(])[39QRCK#D=<A:Q^#C?W[\"S79BP"6F,R R&P%"1X2
MR6"MID%0%:\>.N@/?_]+^2/X";S R0TGLV__]LNGZ?3S7UZ^_/KUZY^_A?'@
MSZ/QQY><4O'R^M._S#_^[<'GOXK9IYES[N7L7V\^.NDO^B ^EKW\U[NCL_@)
M+CSI#R=3/XQE@$G_+Y/9#X]&T4]G,G\2UXNEGRC?D>N/D?(CPC@1[,_?)NF7
MO__IQ8LK<8Q' SB%_*+\_>'T\,Z0T^\#&$\A?OIS'%V\+)]XN3]"/B#6V>].
MOW^&O_TRZ5]\'L#USSZ-(?_M%_Q-'))3QJ\&_(^KWWOY8]SH!_%R,)OF$7X_
M_^TRQ@80X-L4A@G2[0'6GMAP,AKT4^'MV13_+$2>C/+^Z.+S&#[!<-+_ H?(
M_@O8:/JK/[V2D#:<SHTH"XIK'(-1O/.A02'HZ$8) Q]@,/MI[W)"/GK_N7<,
MTZNG'XTFDU[D4N;H(]%4&")E5,2G8$AT(DL)C@>G[TIP/KL9I;.?A!FOYP]_
M643[$@;3R?5/9L(FE,WI_1\+45P)=O,I_7C2&[1E*.!I?WB)IO#D,XQG*IJ\
M@CP:SZ5Z[K_!Y.#;=.Q'8S28?OS]$)4P.1[AOPZGJ",<YN/A< ICF$Q[@6FO
MD^7$"X&6CE,@@5%*6'#9<TD-%[2%@!K.Z:ZX;S%Y;QQ?X._#&%W*+R^^0G$
M<^]R-4$_C@\H?M>VS3_Q<G)Y<3%[)NDCD.O?+ZZF%ANGHVZ2X(JT*(<ZK$:@
M!]\^HU6 5S"$W)_VC*9&*A.(,QK!2$E)X)D3;82,UIDD3$-&/L"S"IOX#S:1
MGXI.VTF_&A7F'"Z,O)F<MY('QCEA-B@B6;+$.HE_@#!.:"\A0PL:+,"R[?3>
MCO$A[\>CF7Q!"TF+5$,*1+H,Q,882,8)!?!>^>A;3.L6AB[9QVTU?Y_6FXJZ
M&I7/8&9:W^+K-/:#O6':2Q?]87\R+=/\ O.WK9>,31RS!!(A4"*%="2 # 2S
M#JY$I@J$:$&#U>!URN;5ID@##55CSRE, !_S"5&]AB\P&'TNT?,<TMDH3[_Z
M,2*,@\N2"N_%_[GLCR$=#I'Q$2:3_1$Z<Z[ 2;"&.":+!1>)A$(&[XUT-@'5
MHHGAK(!]%=Z)GY5WN];MUJ3$Y*ZW=S$:3_O_?R8OS.$N)U,4Q=@/T_G8)SCV
M%S#!*-(//_;# /8F$YBBD+RQC HTN6 %D0B9V!P82< RQB2Q%$>>R%HW''H5
M_LB?C3^[4$,U W;;_TI,'S0H3W TB_Y71A(L1>YRIY3*UD)V.PUU-K''7V!X
M"=<9U]C'Z3_[TT_7"OCQMJ+(\?^$\70O9.JII8Y(U#3J6$GB' J?*QJ3\R:R
MQ-O8W[6Q=BD2W)0Y#\UL6Y55>U6*03_);T>C-$&7< ;C+WVT\V>C0>KA@$P
MV@4640@R*$&\=HYX25-,%%)6N06%ED/J5$18BRJ5-%"Y(M*FQ),40O8ZD"@8
MAK.,9>)D2B1YGK0R)F>G?NHZWP95A^DG&..C1W<=]74"8*.ABL=$C#6&2*T3
M\?@CDDP"S0(7,LDF!8A'877)9'>%K_??ZXJ*;5KB<I!%CI83#AS0=D5+@E"6
M*!--,IJ"5>%92EQ/VO=_3UIMJ<)[7/KKRT4K;566$5_Y05G9/?L$)2G:;M'P
M[K.J+Q$^ K72@N#9=!1__X1.'<:3 TRJI]][7BJ.1. DQA(T9!E(T%P2ZX5T
MSDGF79,B[$,HVP>1%Q>CX>RYO_K!)?2BMD) ,L2XA*&L,)E8P5CYRFH5G,^A
MB9^_#Z1+?FI+!CP,&[>0>36'LI=2O\S=#][[?CH<[OO/_:D?W +7TU% #-P2
MFR3F-E(%XCFZ/."9F<@95]*VX,+3T+KD;BJSH[)>ZO$EQLN+(F5(L_AHP7Z,
MXM&. 5.BDA-;EK20+!'TD0H]F_?$&O240)'?X"4SM(F-7!/GFB7CGXI)#356
M<<5BZOM#2 =^/,30:'(+]&O(_8@I.C-9\$ Q1HJH<0F@B1,Z$C &.!/*<1/;
M%,2>@K9FO?AG(D]EO53CR_D8_.1R_/V6^^026,@22 A1HSG,F81H!6&0K9+"
MLMB&'P^AK,('M:LJ5V5";"GX:@1XCQJ$\;AL#KP!@FE3R"Y*0FT6."_'B:=>
M$[#,(PVC\:S)EI\%6%:A@/XY3<*VDJ\7BEPM4$G&I<TI$QD3^BLA<&ST4\1R
M*842 )#:1!@+U@HWG<3^)0IT..W1Q )XX8G2 2?DC";>,OS*.A>B<@IXDU+.
M'11=RKDVT/&#^&=C"5>LR-]=5,58ZV8!J:P;?.T/!CT-DE(&G(0"2OI B652
M$QML$BR7E=<FNE\%7)<2K0J4J*Z/BDSY I/I;*][#W10CF$XE:E(1')O$(J7
M1-#(LD?'FF*3'3BW,'0I+:JB]\VD6S%J*8L)T^_O!WXXW1NFXHYG^W>0@3V5
MHM6&&9)\B:.20*=L@B?)Z>"-8T[9)AL='@/5I=2F @&JR;_>@DY)R>=6:#2,
MUUX*>*9*1I(D<SA1C*9=YIZ$S(4#!$.9:;9H>!_-FNE,USFPO<3KK^8=85(%
MIT5^)_G#Y,HK]7@VAM'DB; :(66!\3FD0!RU-%CJ19:IZ;K>(E1=2FQJD*&:
M!FI66$>7Z*%.(4+_B\<@!8W3+:9&Z03.%C!9"YAKQ5CJ+=X2GJ,*TC";=).-
M84_@6H48YN<A1DTMU-L6>1V;@N7E?(TD,:N(,_.1.&8 <4@FC8A4RB;+<^OD
M _;G4?9&<JVFU:.^#_U!?]J'FRS5F4@]I$0H^%)22Q2#4U;J:E%D !\I;7+>
M]"&46M;LO?]>7J+K"69P/ID(1$E9-L]@+FZ58,1)R;G+SDC6Y.#*8CA=JGAL
MR89E=FP+^=?T;.-+2 MF:+E@R11KFE.I1WH@+G+,M97&H%LIQ763RNU21%TJ
M>-1G1 4M5-R__'!W]36V[]?(N,C*^G+\CE-)I**"!&$849"422$JDYN8BU7
M=:E&4IDJU773*'-Z@$E$:1101Q@OC5?0FQ.G*1);2Z43&.':^,_'876IF%*9
M*17U47E]Z!H"BTG:X"4!!QC:\<B1IA)GQYVE&:-V&=JXF.5+*QL82S\I!__*
M7Z5T]<4/2BUS;[KOQ^/O*/VKU3B)WCNRX$AF93=I3(SXA/%L$&"US3$;UF1%
M;"5T78JU-F?( TM973%MZPG7<U8^^6@<)=I:7^8<$1%0(C :U)Y'&D6331./
M@>I2[%6/(=744*_'P*?1>'H.XXO;RR)1>YIMEB1+A[DTCDV"B8Y$'W59XJ>A
MC9E<!*9+D54](FPM]II[:#[[?IH?:+F>6P2/YDDFHI+$>(YA?AB$R,1;Z8%&
M$!J:>(^%:+H4,M6CP/:"K]\^Z8==ZD6;$8EVQ/L2T6>,UH)0L[*WAYQYLJ))
MA7D!ENZM/=70_[9";['Z>%,$2)8E56C'!>*(.A.;!"566*I$#"6":;STN,:[
MO]NEIAJZWU+D+:K.Y=3RPSV"F6;/DC"8J5E#I-"S?;UEFV_";) J[E.3T/ I
M8 W*[5[PK'!R1%-?+*^PF/E:3?"EB])%H[-NLM*Z6=WQ&2K1VS/D_FNPI1;J
MO0:CX<<2C!WUAW"2]\>0^@5)3E$;1Q+@JRTMOI6NA&1&F\!3I#+()F>V%X'I
M4C;4EA';:F(W)>E;:\!&!V.%0Q\-S)<V2@$] $4W8#-S5 %^W63#UHKXNI0^
M-65."WU5)-/%1?\JRRL%HMDQ](\PC"B)'L].\&+QPJQAZM5^H](O$[.]""J'
M1D>:'L'4I82K,6GJZ*5>.>;A_)+A.DF?2KW0$>DM(\YX10 TEUHHFFB36/RI
MH.MY\["FM-A2"ZT7N&Y9,P6*95":B)@$PI(1\X<H2-!:9XDR$+1)EOXDLB[E
M;4VY4E='U:CS>GX^ZZ;*<$L(Q[-=C2%#<)PDYS#.I@H33X,A%F?2^PS6)=_D
M7,$3N+JT@; I;6KJYYF:P;SWA=Z?8-K'H>YBV:XSS-T'MVT3\\@D6M['X2>?
MW@Q&7[=MJ+/XF6WOWE@,O=Z-&V6 ]^/1ESX^[=7W#Y/RCKSI#U%ELU:VT_Z7
MV4O2"[IL1C)H3$4HG5(8)39X0ZB223BC@@Q-.I*L#G'[?@B?_?>9V$]R28@G
M-QFQ$R;&THD<K <BC?;$!RV(3T9S[CR&K$T6Z)8B6K-DU?QF@Q8D>M@6H89Z
MZBWDS<&\&8T1V>4X?L)XY"3?;A83& (#(XG-7!&9(B6N]*34F!,;:I(.JHG3
M?QI:IWJ"[H@_E156\WQB!$BSCGDS&">?9YWR#K[!./91%+ULP$K'->'<>^2W
M!1*H DR&#!48JN38IN?9D\BZ5.W:%8NJ:JL=B<IIRTE/..4B98$PKG"F+G@2
MC"N&,CK-5>D1T:38M1A.E^I<ST67]?52VV.A_;NIO$U+V(GS'\]#UGDVO4@*
MC(7D*=I&$R4E4I="+EA.1':8E5$ADFM#I6U0=ZHKT&[]W [47(V92R1SM5GK
M+C[M@O%6*,*30Q<=O"*>.H=OCA'.,L6]:5*>71UBK<#R?#2_2&3I ?J>$=0%
M1RV)%FS9/>Y(X)KBMRS*S-"*M+DO9G6(/T.BLBW-E@6:E158/7.YP??.CW^'
M:=D1=0;Q<CR7 )H![9,@("6&,65[@!<JDF03,V@2!-@F^?Y*Z'Z&_*4YK;96
M6YOHTP\ .?[.3PND[R=Y(4QEI>6. 6$)8Q^9-*"# TV4MH%YRAVH)H>%UD;Z
M$Z0XU8G65)LM"C#75W#U(A(\ 4_$T)"(M/B'M9X1X)%+FX0ROF60>AM+IRZT
MVK&)VE0E[5S<J\M)*1E.X*KG[NSHT/R:MAX/- =M(]&ZG .@-B!"9PGUSL0
MS'#3I+'#.B!_AD2FN<.KI<06)NBVT9QM-UXD#<A&!)DL2<$R(I5(Q 6*=I);
MKX60-*@F>QS7Q+GF9H(_%-E:J+*=6;M:&7\'TT^C=/MHDU5"^L PF_"Y'&Q(
MD3@C)<G9([*<,PMM*L8K EQSW\$?BF%5E=<LA#_)R^ I9CD+AA$DND89E-4V
M)X%PGZ/7EJ4(3?9 K8RP2XV2GBEDKZ.]UO6]F[U<MZ00=93,E+M8 %VXS,*3
M #X1$#0P*JW5N4E'WM4A;K]5[/,88G_&'OQZ #-J#M/MBV)[GL;H0)?;JZ-
M-:5 ?*:!*!^E\2KPH)I47U8!UZ7S,HV8]7#[6&6=53Q0CDG6*X^S+G>,P'!R
MA458;H1/E&ANRFW3$(C+HC12ICRC6<$ N<DUI(OA=.D\S8X84T$O-7W[E_X$
MA\?@]O7H,DSSY>"Z-0(F3LPPRB+AH32@BA$= B^+3IJS#(ERIUJY\Z6@?H*B
M6VV^5--1NRW-\Z/SKV (Y?I>IAF%LC08'/AR?Z(@CMO2N<PRDY,)GC4Q,4_@
M^@DV&=3W3O4T5;/)0;FV!E[#U=^'PX?=6'K)N&Q]V6M5;K"1CF$6#=QCJH.0
M,8W.&9KTW%X%W,]0<JO-I.I*:TBG6W?(W@+'E(Z>@24Q<IR]F-&\--G,PGJC
MO.5M#EJLB.]G**VU)]7VJFO(JWFCF&NC.K>E&.S?ZB+18R%SS4.YR:*<4<S!
MDA!]N6D^^J!01JQ-?K89W)^AW-:>==45NP-?.6\AW). +CQI3U@.$>,^%(+W
M4#8,&NIELM'Q)BL'3R+["8IMNW.2FVBK+8GN=1WN46V#AW*Q I0:A?8!D05!
MC(^"\1@3[)!']\"M0B7W;T"E;736D$V/=GSH2>>CMPI(#CAWZ052/J \4F0B
M<.HL8TTV]*R)<Z7:)?VCDZR>*FLN$?RX%[D7E:)1.TU,EN6FC[($5EIT,25%
M=!XR;W,OWQT4*W'E#U;HWEP-6S-A^GWP^-5 Y>JH(H->"$9*G0+1,5',0DL]
MPV/*H(W3+(.-W-SK ?3@5._*@ZU$@C]([;J-!JH0XZ$-6]P(8C9UE3'*4I;D
M' NX3#&$QW<=J(\N9,,XLRO08XTA5R+)'Z1@W5(;]1I H0#N]04_A<ETW(]3
M2/.^X7=_<.N3[V'<+XOF]^<XOZSTX%O\Y(<?X=1/X2!GB-->DI8:[0UAE&HB
M:2@M1PPE1AH/-FD0MDU/J9U.<X>[ )C77 %31'EGD#1*DI!8(M'B2TJ%=LPT
M693:=!? \RZ"=YCM"^*+%AQXCI-H%"B5$#C)&HH%A;(#T$6BO?8V"9-\;M(4
M8M.3:,^[[/[S<W1;#K3FZ*+3G H"X]D$4BY3+?>M XJ!11(C!2Y<2KE-4]5-
MF[8\[U+_S\_1;3FPN]96MWL<S?;*W&U]> ?/5GV:%CR\:<.FIR93H<W5V8=W
M[_9.?SMY<W;X]OCPS>'^WO'YWO[^R8?C\\/CM^]/C@[W#P_.-I#AB@^N(K]-
M)K$SV;U'S<XZL[:2X<T .Y3EXDGM3*;G96FDG43GC]^A/!=-:&?2W$NI7V;F
M!X?#/!I?S+>F3GU_T$[&CPZZ0\FO/OG=Z6,P&'TM?0XG""C.^I(-1I,)/F&
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
MFU9.MW:F;5]X77>HNA76K29:J93Z8.2K?C_6)TX3YO29N50N+63$,6Y*6,*
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
M']Q%-8!=QK!2"4!*:B$'):3'_X7H HW:.)YPZ0"(O+?]<*HHXMUHT(]]V*5
MQI8OV)]BUH]IM70&:@>G9[(@0;J0K;(I*^N43E)I4 T5M&YX510U,WOKJ6GQ
M^/TI:=UX5E3D.1/1&49=RM($$ZA44GKG$C5*YMA017>'5D5!US')TV$>C2]F
M.>,O2ZAA4$]M][YT?\IL/O;5TD$ZBY"CC*4SN'+<4^'0&^<A 8T\LH8JOO?]
M;0I7+K-6EM/\]55JA!2"@Y"!($X@4I4@LQ&!Q"Q48@)"\O8!%3_PBC;%W,X@
M7HY+"N^B.3M:$A'-!O\1WN;WHZD?+#[O:04*DM)$!_2>)2VMMW$P)'+&,PMH
M0 378!A-W[<_<ZU+_=TL^59%LA5.IDJ%I_+_)8KVQ0]F1Z[#=/YI-)Z^A_'%
MZ? ++*[!]$#[*)*EQ,_O!EI)K%4EM&(CSR%JIZKTHVX.\6G3IK)**AQAO1X-
M/Q9(9=QO\_$8<'GM)2-BBM83'UE$3.AV!!6!^"!9CI9FKJH4;%\'YGD0HK68
M*YQ"W<3RRL?^H.1U0Q$1#O_%:#P>?<5OCOUG_-WT>P\$\Y:'3 RZH$0F@6AM
MM"@(!H9J%;.MDB*Y'<QG0I=ZJNFXXO>;RR*=M_GOGT:#P?>W7X<P*UO<3WT_
M1G'T$H_!R91)H-SAWDAQH0,E230^FDR-!<X:6!T/O.9I:[UK.79<#GQAYBP[
M#I?&=.56^/'E9#JZ@/'[[Y]+3<_EK\HJUPO4!F !B$@<-[64++%&>MS4T .7
MC$DO="-;<]LW/WTB5)9VQS7!'T![&R:4RR2>DJB-+4D7B@0)B-H6\QF=0:=S
M>U+\4&S86;X=5Q1_ .:UYS0K)P&#5/[RW7CT<0R3R8O^K!%Y+P=0V>I E)<H
M(^\S\:4?N66,.I#>4&BR572!Y=D3IWN-U*CK,9?+!!UQ0#<J#. -3'N&&>Y-
MQ)VPE(Z3CFKB!7Z7E0H*?[3)5JG8N!;-TR9*=X+NL+Q%$_;Z[[/\D++J,9.B
ML4P2I@2.._O21P'M)*NLA9B5UEIUL&I<O_%IJ[RB="L4FS@:#$9?2Q'Y5Z/Q
MR]%EF.;+P5VR'E^.2W'Y'E?>,:LCL9X9(CE^L9Q* E1[R)%1XZI$M[9"^;3I
M4U\Q79:-F+78\0.8E-L$_4E)%YD<78S&T_Z_9N<&\U/W'C<\4Z>!..,2;G/"
MD5(GC:3 HZ0Q>;>:O+^^>]&#;WK:NJ\@S2[K.ZR!=P9#^.H'"V F6,."B(0'
M+XG4D:,++371+FN=)<@[Y7Z;J/G6.YZ=@G>78(V*#&<P 7SBIZ-A>HE[V&#T
M>7;?[%LIW 7+7EHGW^+@LM2K6Q:2.!VB71O1K"U%2'HBQR"H*3?/5"@U$@-Q
MT2M" 0*Z2XZF.C<Q.L#^M-EU*"6N(6+[2M)KZR >C<=^^'&6NOSB^_6?+.RI
MHU(L9?;E;S"97M5<8CT.P5MI(U% *9$A!+2S?2(YJ"RH C3"FW3!WJWZ1D>#
M>![4/)A:UW"T?0'JM:4-[PXFK X&IV)_?'-'#XQ&R>9E?61I(9QP;_>4,.%#
M )JYX/5Z)'0Q@F?$SKTK= TU6T6,U\^QV:?HC'Z!\<SL\--Y6?=)+UN;E6>!
M&+0NB 2:2. ^$&Z4E"GA)$J\B=6VW6N?-F-JRWD-)UJ%CW\?C=+7_F!P-)G@
M#@^E]/#IQ6??'Q<*]X*)(8BD2-;EXK=QF5B=$^&9"0O6&Y!-S@WN?<G3UW=W
M,ERCW9U#N079G;RI)=1>-A98UI;HI$HSSN2)UY81IFST/I9ER#?0[,87/'VM
M=B.[-1IM77UX">2:9+,6+]*!X"HZ0JU J\?BKNX38\0Z&8R-2B5>Q9A=#^=I
M$Z!#4:]A0.O@[#6<M_D4.3K\6(J[E?5G.KGRWZ[XJFAD!B<NB4D)%$ PQ$I
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
M5L?5H8[]!/[P0S_/M7QQ.>D/83)Y-QY%_,_U+];"UBHX\-21$*C'[4LZ8KE
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
MI10SR:XTJM4E[L8DPR\^*!:LH:Q*:&L-EOT'M-KI>E/!QEW%6R$;>@FIYVT
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
M<:-3G52PW!H(XN_0__BIE!OX F/_$3Y,(%\.7O<S] * TS0EHD R@G@M"51
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
M". ((!S9V*"=,Y!\C+*VIP9NP9F!^C"22:M3MWZ)L,#__3_^/U!+ P04
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
M!_@4);J,G=SHK9;(G$\_KMWZ1H3N^:BD,?>/X#$UUU8!SXIRE2ZMZ??8X4I
M'PLZ8B<5N5)$:'?B:OB67@?1J2V_.BGB#8,BD3^<O+XVK+_O]PA=K.N[/G+<
M3KUP,O'48^321*>[-KB8P=9^%KE GNY6R,BJ6 (I 2[Q]3\REJ>]I4[M4UY^
M^ZYC0X'="5N8 %!? 0WY[!T[7,")NX#7&F^DC=N8QXC])2@1H-$/TY9GK)I:
M'U!'5"[%T*3V/*)74\3.2DT<7*^_"%!',=#>9ZFL8P#Y0%6[&/X<XZID$+&>
MG7AV-*2Z"C$SOVBE6?OJ^ED9U9.OFGY?K+]P>^(M!72MEEA!29*HR7.PTHV)
M@]9L"BA83C')OQ+5W>)M>DVFH*_SGA-V.O+VA]A/=^[*?D]#SF'?W2Y L-2X
MXG_@4QX#9 L,M5I9AA'1"Z3-[87LYC/%(,-N9L'% LU$ HKRYMLSEP/FE"6I
MY?C@CK27+WY^67^8C3AC^A &_!T,M9X"VE,@M>I>?8'(B([;@V3*3BBB;\/M
MSX^"<%QB2WSC7!%SY'2F6+IRQ?O],T8G+64,(L2+$0\QD &&>Z9U <7)%<+\
MGA6/!-@HN4V$ACWS)EQ3@6Y@ V/W&#F&@E0I=$,6CC +U/;%8(+UI\/Z,,C@
M578P[KDMCKJ)$(04?HS1/1-^!CD]J-8<]9T;^"(OM/UN,N_B/J=Y@.P(P)C6
MFE@ETC )"A.KI3!3C5/(2&6<6)!-I>YL !0@$4Z544"XZI+XPF7RBZ>?3Z<K
MXHZ)F,C?_+$H"^-MAK)^W+$#PY+[@^28N8\GLF7#N,<H=8N<(F +SWM?/998
M8;:- SB[NZ3:OA3N ?PAZ"\X_K=G3@#TK:RB;"*NXG7;9!6Z7#HF1$4LE*N_
MN?!F'0[1-]6K3--R8%?#.P#W$'(G!;Q$@O;UT>O+".\B!D$;\G34=\>6WA>5
M)T"6?>N#*TV7.)_/*SE+M[8EO?;MC!E(Z+!GB<,HAAMDC@ $4T-OH)NR$?BZ
M^EL?5PQ.J_L=L#;T)KEN(C[1_?DV'H-CU4DZ;4>\_&AO/&?.C=(:TXU%668[
M@F6ZR4=O2>U03]#0S=[>2A=4S'1I/27-HS0[6QI?T?SW[P$ROV1#CJUAO.4G
ML3S/2 1/MBT>+KG\OK#ADY%J7)$7C*"%B:YT$S,;>RI*L:&=SRFA;\Q\'_48
M[L;%AP_,OZMGGWVG1W6?0F?!UN(8S:GFY\$<.%=J_#IM;]_!])(:$I,R8ZFD
M.@QIV-Q<U7!EX^EB64Z93NV+A1UNQU:P _FK&@P_&I*]_017-*-H)_3Z>3_N
M6>2)7D<T$HK7Z\RB1!*6QM SS8>TOA8&01/FZ^<77SQ&KG!))EP)P@@&=,-.
MKS%?0//SF7>S\+R@8Z== E':&"L,177/F8*$REM ^9N*5LL,[2AHW"WEG)76
MSXFHX',]ES67Q-]TRX5JC%4LZ5QX'/DE/5;[A3R_Y*CD7!U;CHH1PIN-Z-W
M"?B?6V).%+QAO@B7/H0._OKU0[ZCH9251E% 2=AD2$<' H%<_,6\#]>&?#C+
M*/4 6UK4A7/7V-:,NN?%\^]SAYO $2B#TE'0$&JC/GPRQD-RS$9 V=\LK.CP
MQ P GJN>QG(EQ#G1:&D7PJ>GFPAF*)1)G5'R_#C3BYE4YAN_6OV[\-8/M;C+
M2:6CLSY)1BGRN<U[J#TB@C[LK2N,,&MZU^=^:!-1'SV"^?UTF%2%34(C0%P/
MC@\F(>)HU4B"N./QB8:EJ^'!)E^4\F5_OK X$2/T5O/>,4'^[4>->$ <6ZZ:
M^6V+W\-U"?#M!ZZBID9Z46+AF<@>6J'2OI5.=QU08S7?A''Y]+L]KF_##XX?
MWW/V7"=)IYAX;^WG)@(R7>&*P,).8!\\"6F)8 05,W"PB!%B:\X3^59:[L2U
MN-\%-[BN Y=*'0JN[,F_-'.5/_!EY=?^O)R#G1Y_,=0U%-Q7FK?Z"NS2T" 6
M R?,/<K/(-0NS.KC ,K&<7^XT<3,P?_%P1E;2P0M8*)B"[ERDD%L#T&,X9L1
M;K<->KK0<3BW_L.+/>]3K<X%5K3?T/'Z?'$^V[]0Q.DI-P4^61D(M$O?1#2C
M5JVHI&D6;1/1@Q((2E^X@QKD]H.X.#VCR=]!;\OR% L=LZ-6\AX6]WI]G%P_
MWN$1K:P(UZ$3A(XRYA1LR)7(Q%ZTU!!Z;$$_3JHYM8%/^E9>T,%BM?--2F^#
MW$:"^70U*HZWPYPA5F<3@2/6!J&VPZ+0_> X*>)VY0*2Q\+\D<;Y78?3Z_Q8
M;W6?750R;TWX88L@% %D/R  F&EFZG,>:G**,5[5TGCTF/["Q TWI#441B/Q
MN\VY!TUL)#R1N7_-Y3/Y>0=_:YFCY#^%VM)$4VLZ[L8@M \=RU+NIPU*XV]
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
MA\W^PGU+:2)V$!.(#4?R.P YMAI4R9 8Z5(H2S,7GU=R^/C+]E6N6[>4Q35
M)7Y6+:OXWJTD?)-X UU\XY)3D2D41LU,EIT.+LLP-]M6K)Q5.1VX<86H,H-U
MM52/"5>)D=_E]RDM1DA=*:JUU4;4&;?VPRM&2"U@3X&?2-9C>9UN$,&G7H"
MU+BB,-\4J 4MV%+UM,$.7,)&RK0;)A,?D@W1?2_02Z'SA@(]D^>NJ_]ZEKZP
MVCGL4]VN&U)975G\INY5AK]OFOF%[OG<T;0$_M!CNV*TUZ_"L$Y&"^!QG)=X
MOJ< .52_47N&R,L^P7CS-YZ->OI>F,\";'Q^X'M$E.7GI^N/1ZM1FH&%KQ!?
M5_[\XHK?^<^UI"X<0#[0AJ&NR:Y@ QAEG<([.MUW2_4_\&U(V7]CI9@B'MRD
MVOVUI/'^)\%)H,EXD&[\A"TWSL:Q]-D68$)\I;^"./<)$Y"//+YPJ6E4/05E
ML#<YACGU^,+YL8>W$A<%<>\3V([P2K9PB7J+ B_!=4N+1!^;1TXR@X"[7*E&
M!K_CA.G&3XC/OC5[3M35*L3-*Y7ES&>V?FR;D\#LJ\60$=83UG&@GX_1QTG>
M('*S^['O,MD*<)_3:H3"-A&><&:1?H^$'46-8^-TVBZ51?I^[.M35JD?"_=_
MPKN).#_R>[P^X9;AWVS9//N=2S\?**ZX7#Q_5)I](KC*W5]NO&CG6/"JL=;5
MK[:'-WY\^-R#.W1<+8N&E,^]5&,M>+Q#\G58%J0-[]HU.-AI)"J,)M"&,I/3
M3:I3EX1S^TY1EI?7G;*5:AB=]@W9_GJ5PU?J3AK[B7QWOG>OV^031>]F)B60
M>X9$I1/7;5%IF%4[>"3W7BF",,_VA0KA4HQ@ZW#RO3EE7)G(?*8OE#=>)&-+
M^$NV ]?<AM=\FW[R_[0(VCNN8>4G_%![53Q-PE(P PZH(D!^BT$"U/)VTS;.
M0[0N7B>V R5=:32E_WO&1OQ8U8U9PIR*6._GMWQ=1E=^[#^ ?ZQ7=;,&ZP&E
MP\[DP1.$<=\"-;U$AEP/L9'8]2;HTC!:>48)0VZ12]7Y(VYSL<U&7=@_K\9R
MV*>DTW"_T .-J:/JA#WP-I9B0#N[Z1,T1[;TB2Y,LU'1MK&&S 22Q%5C*U3W
M1%.U0'OUK7"/:UY*C^IKE*.0#0UUTN^>]B2HO+T;C0F"*=DKH#&?W@=S=8B3
MSG9FX0@?N"906'AIY&$WK7"D4&1?Q]_\"X-*L[]E]UC^H(YZ\,0U'VCJDC!)
M4*Q/@6:X0J]A!_"P Q]A6^"Z.N\#=")IE*F%#@I8A:EM'^-4@A2G-A:.F3C3
MM/KSSXVI^E7;AXOH*TLI,'PDX-C=E\;#P'D-RX4+=_:0U#'4$1B5>]=683+.
MOPQFTK47D-.LA9O$^8-_H@ 1F\>3-OSU<X&]DT&GO9L2-'QS[P\(F2/$RK-Y
M!A"$-,(LT*3/W@5#A']]C*W$$.PKT%Q=6:#$;TRD-SQ"=KNK@9EQX:E1 SO=
MW7I"JJ_Q;]R5+&ZX*W4I0-KR795TW;:_E*WG[F&#!,0@088@U:Z#!&D*=E'X
MH-A>K"S[THNE9J^^/#E[9Z<9E^F^T+]GF;^Z/3.,#,QJ)2S/R=ALKQ1D2X71
M9!/A":S@J#B?8M@L)&2&1Y3BSS V$:G&V-76UMX G<K$E.JRNF9'_BQF>(;
MY5U(C6O#[7UC[<J0H1NC*9.AZ BR314HB?00^N_@X\=GZ&HM/]O XH/KW0=X
M+=^*1I\^>Q0#AZH&!=H38;G EN*C$F,)^_'6C+[5V85M#%R2J^7AD$1PT27:
MQ;II[0!@X.;X-_6G#&I?4=C=X18<I+%&']JZ/0FV\1FW=P+5F-])3"+5FR9J
M*-"9.3[S@]OQ9A-">5$^:0E128VG?PZE17N?[O9Z4FT(9]YGS)?W[1+ U#GB
M)L)VQ+$&(!<1?R9^)ZT^#P(V!"H142BV%(59NG4?-6$&6Z_98X:9/D)09A^
M^D'*PLTRZON&!O#2+/?!+MF6$&)H:>7'DDRM6_JB%?T'3Z?ZCJTW.WZS6X5A
M(&@"@\J=Y(^9876A:FYLH#KN[/GK#F6TR[0R>"'4I2*S"WHN\B&R&/HI@RMJ
M!D]\/H<*7_X"'%.6@Z*H)($@=U6&7#S^B$#N6FKX_;$VBVL2$=BYRD>-V1_7
M#W[6K:![+O!=U::H;R)V Z#MVKI3<0>6>5T.M1%:%(VIY!AV4115(#>3^'+\
M^4]ZYE>&WJHPU-';L[6E/:>.7[5=,42T23+OOOJ5-=Q^B).*1L.V.A ,"'.4
M78 O*0,KC19W@2RHA-=/IMO+YM<2"E+<H3Q=ZZ%P(>:MEE:-!ZZ^EWR[)[-
M/OY#K.'VHYQDS%<M3-,@)TV99Q,QZB*"@/YR1?_S9?%=.)"/X-D5VW @@\U'
MTX^=,P#7NI\W)H[0QMJ5EF4G;@=-'GD&S2Z,I7R0U_?LBC^1B\LOO9VX*L,Z
M Y\71L)53^IWHIH6.XDIE'J9W,74U>K%D38YFEW"[=^AY3-SGZ>O9O\4]_AG
M6]"=F3RU=(C<AY$'R+^(OX)(?\V '[SMM; )</DF'P4\B%/U7"$ O-FW,$$'
MP)G.B)8]#RI-7I2L$ SK$C;$5F['I3P;[5\TK#.H>WS\P\Y@0=5H\S6N\)8G
M@A;08B^VB060S>'*\XQ4[YL.SO16TZ;,=5%);;J MI/+BLVAN\%Z5QY]\;;2
MX)&=WW/C\W?K."_5_WP5<1(F9#-AL)Y;7:/IIY)JY=*XJ)F@.2F0\ZW<-)&K
M$NFRS!3WN)(Y<$"CYPW]=>.=)):->LJ'BTJQ.I@"#!]>#-K29'"MB_D1F;\0
ML?H 7'3&\@1N(G:JC3?JR]F6F3NTH--QU^3E[-\>=5K,WGFBA'\M8-?>CZ+(
M93]FS28BQQG*WT1X;R*<-Q'#\L_YP"BN\ KL5B;A$T$7;OM'J%AHKUUTN](2
M1KRQWS:AE(81_-[<U'Q8_:>,I+O-HMO'.M?R:_OBQ63>QYR)0OVET#1(W78*
M^",&; $H][%_2^F7:P//@J:;HC<&<DYVA>)4M<N]5&M4$IP3E5]7+Q9S16#G
M^34W$?%/MKXZ@#1@=XYPLMJ4B%(!6!Z\%J9G4&RI)NRE<]]3%S^G9.DP<TL2
MB6^MN]U/7/'!$117W!KV?5$TJ8$(:>33_190<RH_T6)0OOTK%BRNCQYR:\VP
MK=5\=D4PZ5PTX1Y UD0? <AG@( 58I*R'J>.[0/FO;<"-7N4@(X5V!+>2%6N
MUA^MW_WM@QI@VZM1;Z?B@/HFS.Y_7GK7Y76P?-O/P<O!2[[-9U"X'TDT?6Z1
M=W7Y]_]/'_FI/L!I)/G]8CEP881(8WPCUX:'<<J1H@Z?*G'JFL%M?TVR3TF7
M*>6==E#C%/Q>WLNW+@V7PHAV30J7#-.0RX/\$'*!GM:^\W7K6#B6!RH8L>?,
M3%(^6ZAO[U+11'!:S"(_1BK63Y.J6M@L.#!U +D%6SO!ED'U""Y<F3!&)0 R
M#NH6C(F$8"GO47SCC&1[@^^QT+<(457S"_.7SJ2]?*D&J;%TX$3H(O+AM?S
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
MENYLV^+U7/\+9S?/N>G3S=D9Z_C?VQ>+L>;L%QQEU@W@#:WV-!!+@\R:I[#
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
MCY 5)%_N3O3;<V&'^:I-X#GP*RCIQ_+&(?M>*#,?M:8S%+9:QA$OHH$3.;J
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
MM,8B[.B0%(XZ/)+,0<=JR2.WM[S)=0M^@#8SZ/*Y$'G&0/>"Y8/N> D*@(0
M0IWC-OKTLG2(\W"E3'3W]$QQ7\8/Z_<_0.]U$D2PA1PMEC$=2YT/$*;II*)3
M6&K/K7+GU;7I1GE5T5X-<K"=DH>RI[.-J3D'!;8<.L8:[U:NIT\9WGY_9<,\
M$RO[1'A11SUX%3=D%'5BCVNH!8':K Z6/!9=LT'6M1PM^&Q C8YCN#<UU_Q
M&,#B41UZ'$TXNHL+$C?C/6J8QQ67</(DL*U@I7KG_C*/G1JHIDJE<Y;74PEM
M*!BPLY=Z+IJ'$J^2V/M]-@I1]2=P0A-T]E+$:A07=&F5"HM$]F%J4^XR35@F
M,*')T"U,UQ8,U;NG^&5]P(,7?"?5#^N"Q->^TIOY:9$"C3J9*VTFGDONZL]$
MC3)'-BCDP>@ V<>/6A>/+<Q?68Z#S0(N>@-&&]B&ER*'14Q_%K2.I<'BHZE/
MYN^=LD6=QY3]"W/<@4!_!T<)2"9+>+3;F'U^,G(M_*HSQF6TCIEP/-9]V.YS
MOXS_XXK,OOBLD%,'(1 TL&-\J<7*[7E(#KR7(M';Z6O9X6&C A$SY.P(,U=&
MY.=,31YOZ DQ%._I$KN<TOVP.'I7Z268 >\?(<QR1"*9XIPICBH-F\0%A6!O
MFGO/I)(>M.!%?UC ,J/CE3M/J'MF'?,)P<70Y3U[\ROZO"3S7&7O(!.?)MC8
MLPMY="$92CNV/*$S&Y'*M&4)L.]C'.CHE*+83VMQ1+7%ICMUUXMS1)3.M[85
M2/<<\#TBJQT;X* A57V=1WF0[/1 =K$5C&D7<L,C^U>X#T60WD:?R2+CTPN^
MWR^%IWS--,7EN]^/ZHYJ#+IV23S\#6[[U,3OI'30DV*X1Z>Z+*T;D]1B2.Z7
M,+<;KO"O&?Y5*'8TA4"8D-QQ1-5A2VEH@NY!$ BT5;_+2HXWW ?V'18_-MB#
MH)!4'V(*$UD<K(*;MX]S]-H::<NI]3MC<ZGNWA=S"H-]U1V5-22?O;ERSK,F
MC/CB?U59_Y=X1?(_G#L$_Z?>.?%'_G^Y>7KTV@#X!,9SK%[1P,#@J?'9Z;-]
MFME:_-H/'R04WRAX>,PHX][C')D0_9H;JY&97% =+KE-?N$DH-+Y^\Q@&BL
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
M;GPJE1!UN'SJ($.OR"B<I(->+;4M_:PWD7M<S(+N/-X-29F&]^KAKF1&2*W
MKXAGQDX)&?YN,KFK+09B 5D>#-%8.ND@<1J1#J(VXW;7[:U@W.C93-R7TB9R
M<H46<95XHY*E3 4<]($V4'. (CR+.C"(_:6:S[G-M9E%MD<-0BH5-[KGB'C,
M^)+<68I\E?_58J>4XO&4-6N$U8$NG^S/D:AITX6CM[G4WO0$C)VT4RKBNK!H
M<K5$7GE]\*6)\$>5Q'P(OEE//[?H\EQUO/8-W)7Y:;GOL)&T#J:[I96%DIQ9
MW7HJ:=6YPK]^&46=G]I1R+V+/&Z+(0M;/[\P4R$6.M.F H^H9%5O'$VR] YT
MCII(GZC,[EZX_3IPLO,D!1.;43_7R%  @7IT4-=-Y!$ZR U!5; U(U7S&S3-
M*4E=SXG,W930!5OH*U;+VRA+W%TW\?1$)<'"E6Y'$?DMD@;?UEH7#FI/D%RR
M339S-B?6EF=0IX@=FQ\+?%QFFK#E<AOV^*T0%"38:\(1QN89A&,NK$POW;J3
MWOE7U?QPAI,YK1U2P=PFW4/6H4T*2C54QR?+@X]8=7R<8'1%;;Q?/EZ,_%-A
M-YB3(J85-FVE(^^>)L,O?;FH]F*.<.)HNKZO%NV7FTV<)63F,YY?X7D.IM6D
M!)=HM)"[NK$J^=*I2\>V:!L>C/N,W4@B^-GA".@F5E[=/>=EX]'+BON:ATGG
M?R79/?8]<+.M*,C[R'83]!"D=#0Q8OOJ>.*3Y%%23==@ONQ.?#QYTA[WNOO:
MKQ+,ER:#8''26V.S7W$,OE,3,_OOR?GR=\#,?YI2,%%5EKVB@DPIJ<V?')]H
MOB[3-MS->W'_V466G4C<!+,9L;A[A<&NZ\&P, '$TY3%%:< %:;^],V0=YC?
M):<V]'QJ2\_9*<MGG=&$3^OB<SF6#1'XMT;Q.PX6G@X"@%HY7XR^<=;OXH6)
M*+.B]+C=AID[?G:+BQE8)Y$]ZO!+C?._$QVR6?+4M=6.V+H6H :\#JF4# %
M"*]:>F$FRSGQ-WC*W IKEEX#K;%>+LO;8-"@'GB[M\$Z J+FZC8G81+4D3G!
M[II[<ZJ,=_:[UGXJC\"MTGN#N^ER&I\Q.@.O?LK(/++Y/#EY6^B.X!MCD-3W
MI;GZ+3S",/.PT3)A8G<_W_" ;#:EF5[5^85*!TV([40K[ QZ'+C+W? M0C"I
MV1-Y-8>A,)]MW9539QIY^L>+-]@;!4+[%(=G,892 VKJ^%(P -?%:!)Z(YT?
M.9P[D-E\=#)KABE_7RVE0=.O%G%V45E3VS3KK..701/17VNZG;UF"76:"IP#
MPF[SU^^[W)#D%'DND\61Q;G*:8=6_^\19R]WFB.6:9<I9H =(?(.5!CX.#\E
M=O,+SZ1;P8SPI>\TCC.WO!CLQ!V>X^/90>%@-@!R5%=A91T;.W.8L-*:3"!B
MB3U[)<PC$#7T\HB[LLC1P)NS.[:]-BT'[0YZ(RV#J!Y79046I]'LE,"#\K8?
M-9&B704%2A'=$^H?.98-#HT"W\UTB0TJ+"-XT4[P\2&2?WAH&R:2US35BTLB
M1_B3__CU(>?Z6]G*J^DUR\6^H93KF,V/Q)E].J@B=%.ED6W03CF^&<9R\49K
M/HT+]YY'N^/,!TZUV=%@7(OK3U<26U6HR1 2_ @25I)ZX_YC9UWK89$G=)#T
MQ.U!UI[AP'"LOM2+5SZJ(83!UB5@VE-@1.KNZ<[1O#AXYD*N@6*Y6DHM[MS<
M:BW^,[&%8<YCWX>6%N0P>Z^JO%M<8##D%F/:"!W$WS>.L\..6RYK#]G-R?$@
MC=^MDH"-57N>ZUVY>0_=UI1+)8!XPHXA<3\<_@:J3/$ANK;W7=#&7L=WO'G&
M>_>-?2_+M)K8[_QY_VLUM(O74_8A@";. 3;AO3\-;:P%G&9KOSY7>3$^JG"R
MSV&I768X)N^$K^2WO5(SP(& Q<\T;8'E@FG\/H9CNA7<UTZRRUU'^VDI._!-
MA2OLP-8[V)8REED?927V,[J_'7I#5+<!YN1KA-NIA'=%)>9B:<5FO94_I/0K
M(#ODSVC\1S[-4I7I@8/K3;0S=% 3%*EJ?TPEM(TJ=;>RXJZ%#.4T7A51[O#7
MYT6]%LRT[7=8@Y#@O/2GQO@A^8;K=X;P@_+.*J=U=7U:O4BC R?GP[4T31Z
MF/J-=\T$F26:9QU[&Q8-*_7L3;/3UH8#EI5MX9V(1%5-D8\D'I39ZZZ\ A]'
M1ZE.M*6O#->=0(9LWM_]_[T5]G^6[<W_3NKV_UZ^U"/FL2=]F'55^J+J-1D<
M-@K_6[C)8Z5PI.]+H--K.BBXG&@UETR&-<&94EF5 3KH;5;KP/MY.]KN%7 *
M_$%'3"L+X3I4I.O+UW56"96$B:\Y>LK#*&0A'C&-E>:R$!ILMC/_80=SC(M6
MJ%\X>-SHZKU0*OM]UY7-!]O"@(D92^+=:J='#I#IC-\/([&W,G)_NCOU9@/X
M>73XF5$8J/[$OM=" E1L+*%XPRSMF0)Y!\7=\=)Q*Q1M#V&--E S(FI8UA%C
MOM07]Y9ARIL]TC1=H'<$.Z _2S5CY,./&5PT>7"T( JD+M5#XC=+IX,$G9@U
MJ>\55#;1?LXJKRC#G%JC"NPJ#9_@27306>ATP*+/D&WLH.%>?,36!=^2>++R
MA)/?6Y00,#Y76,KE>'(RL^JKH$DP@TX\GD(9K29^5V_S4\_)R0G^8F$^J77F
MJKAY9OC1@B/]#"*5G=E05'BYZXMY]]J[N'>-$C<6E1MWTE+3L&FI2E>38ZX+
MCE6E#XY+B7=0KII&' AS&-BJ$CU(V]3WC6!'-"'*$7TNWHK(!$L"AR EF!S-
MMK49E)!2X\Y&S;8KS?EFEQSC9/5S=J4KNTY3T6YJTFYI5ROT_;-D%R.-R2=.
M=]/\N[1M2&93)%U3?T[3D;UHH9M#ST8]-PTGNGJG%'_93/66M9T_++]Z1*M6
M82>7(H,%Q)D[^J:0EP!(#E)Z0(3<> F(5)Q0$-6@&/S4I.5W0*3'C=9-7V$
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
M_&\%%8<=K^3RW4SM:7MA,;S@C0'KG8.1?#[TK'R\C=@P 08\=HV:X44/XE[
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
MG5RN+/ *U9^EPEK(QQ;%&+\%$&V17# _"!1M:\P\71B,V)(%W]ITJ3"@FV7
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
M\FK)6B08NGUC8$)W%/L"N)/07Q[!,@IG:DCG/<QC#80T"FDP3+\O<HE_Q,-
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
M8TW)#O6>W"%TQTZWH:0XD.$?@8,<B FQV(>]]W"A!_H X D;)4\-1DT'#&
M#WG6?E=UY(_E\I9O85V'S#5?2P_Q'!G]+B&[DX0>QM-Z03Z&,;L[ "C/>88T
MV3(+3V_+=0+K\4U1B4DN1VJ_G*VD!8>)R"/4:J2"T,K7/VF72<FC3W!9UV01
M6C '! A*(U8M^)VZ#@3@*5MW@%3>S<NT'Y@MORHXDK7Z ($YV_1BJJ5Q\7JT
M0%.X5-?SK*LV=,$V8*1[BOR:+<S\@\L6&T&>[P%6(_-4I#WEV>^]8L\>F18O
M>GGE5QZ[9Y]Q=70PL"L8^EL)/$-_HBN?P1W/K_6JE#\<FD;N15-D]%\WGOQT
MAA7WP''LZ2^O^QE28[P0%G]Z+8*]KY\("&UGR(6%(GG!.&)TGMM K3X%@3N:
M6*(ZG?1V,51ZQ,&AK,NTYG":CTO;Q=TH<^9!5CGPH'M$<M2FARV/A(<:X>0.
M-?O<4Q70$RR__DV[&/3Z_=WY\^LCP%ZM75$LI[JZ\MX'LWV(%1'9XR\S/]II
M6AN(G37_M%-MTY62_-T6+U#+XTJX'_8A(_9G;1PPDTGJ0#]*X_G"C:'1$U(S
M*<*$>W<36E)D7O^4T+;.DFVQS#(.,8K,$^E]Y*5I55U6VY?XY8*DT.3/WI>U
MESL>+182PAOR*\ZTG'_G:IE!\XB1CC<QU@L:'G=45#(^P/1BE7,@WH)A/O-;
M,HVQT4D'[A\:Y0L1WTTA/>^]=!+H.+<Z6AO#._G$>/[BY YX^L1Q5J[>(7?1
MZUGS'XNZ(Q'O#IVMU;D_> V8--W.DMMD$9TU;O8SY8"<0$^;$(7+IO<8$GV!
M[5>U7#*>7&W0>S;XJ8$#V35!916EB$XH@T;IS.M?[SAX#>N=\KBQ3RBF8,?9
MR PIGEX*Y@-EL-E\HP8W5B/7M$K(OR6T8%V@SW?6]F3AA583/[E&ZY-%T/$6
M[RPWN<N/WPD/JM\,PGVKWTV\YNUZ.?7!W;,!"E<O^]WE%3I5E7#ULLF1E_7N
M>@%'>L*B'D7%?T4;!,;3LJFZC'=+>CLIPCDA9''PZ_@]OL43=N+BPV Q3Q-0
M;K3L/YH%+C "&J:4.1 %7Q(O*;&S+L;?8Z;N_%ZU]OM0'CU!INH9))S;FJ[J
MRE4V,W%"(AK^*K1#]U4<.6I=:0_J%[Q4]-E*1N_RLJ[.9$T)70&!DJP(E[[0
M(Y$!=61$#E <"Y-H7;>CF]I8*=<^/PM?I2F>25ZU?(9.[MM4:[GI%'+;17 W
M=VSZ4[A*13NM/6#]T?J90!AMC?5"5^Z(^5/V3JIB]5#C=0( F3 ]&\ZNOA9)
M C_B_\)X7F)2D#!6&$K9Q6U%KRK=("LC9-98/#9X/9:?Z4Z!QWS%/*_7#KR\
M.9JI3J>*\?1KK$ CBXN\=#T6)=1&3^[]<7)H,K8+:]!>IK?C\[,;[>?!:M.[
MI*KT>NO;QJ$#6G,14[4]WL52:I:( +-W"'I?*J)E[@4T%D^Y@3F8$NA)$^A9
MMQ]E.7='LD^-&,<MNC[54.I5#0(H-O##C^G074R5G;Y[/Z:2VD-](CM#<O[:
M/M3H_^(EFK35^B*'R8\5%&3X;ZLMDC'F.WK#[; 5N/GZ)$#;T 06\F\ +PD
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
M?'?74/8V0&^2.;1F%2&"T_4<U(AVP12XIT>$5CWH_!S)_QEN!4H855PC$JO
M1KO F%LX[^'R/?1YYCTZ.DZ?XXGL7?.**Q[.2V>=9[E,I,*I95M:6A9,^(]\
M33]H_*[T8 BNBLB6S.<*!U 1HQ$H3AUN,AM'M]&LA5&'Z.,QC]SH5<U<\2J\
MR:#.=7:[X(-O'X\DM1L/'Y1=+JO!H(\G=/"MYB_DL[R<L7T\2-GGMRQSC"DG
M&ZZ*D>@O3WS6&)'']NF=Z@O:4J2;XZA>GP[5[[(#8+'WW\)M*PUH;C^>0MG2
M9915'D2<K<ZR#!V;]$PTAM$1;4_'*Y]04(D*WX;B^5@7ZJV3UZ8?W__F\-7%
MHN1*]?UK8;WE;X7K*6#F*27.%79CP)@D$#K<N8?9WL-8I9Y)5+R13)DXB9#
M58C&>Z05F!7-,L.3-"UT5-)%[AN4J,/[BLMHWR;6>1!!5[I0]"T<8##<F@VQ
M.OSL3!]6X&? U],7!%&ENHG.]XU$BZ2N1=PY#GWYT#X9=%ZC6C05'T^D(PEW
M4!+& 4$Z&\-Q6%' [?S0GN?IRR[(5V-6V@9A[2%7 S_[COQ;<X  O"C&Y%T+
M?>9XO+%6,.66U3DEQQND=E=?-%?"!<6-%B&S9O]E]0\/<B_3'F2ND^O<#2<$
M1?T+B&;GZGB0^HQ( \U"'& 1A-N0@N&6\G+_=/S3\4_'/QW_=/S3\4_'/QW_
M*SKFYOE4U=Q+R7128[ZTWYVG*DIK<?V/KV95:\;,!1ZP+F+4@ +Z>BM>D"OH
M0]QAO+EW;@@E40X3FU/ &&4]N>]T+"87K;30FXC7RJE.IEB<DOJ@(STB95]E
M<QR:@2I;6NAA:##G@2J6/N9R)2#]+E2[Z5\JX84.-]?DI]9:#A6CYB4O^:S/
MBR6Z">A9'$CLVKM^\$Q)JW%1VI.MUV_;PFAO63=^XLIED[@BOD2Z)5%Q+MPD
MY94M93V5#9O*$G-1=2K;:_ -I3_>75X3-KZ>:[ZHMI-FUD!>4Y?B6Y;"TRW)
MHIB3H-C'8*YRTK '?(-5FZ'*:T41+<K&0X<<7(IT:D^\/5/6IOZNO>)53/?+
MLI2#%"<;+Z4HO4?*!QBQS-N<&L1U<6 /+@8W^0"U'2LXQY5D*+7$Q%)P"3CI
MZ<%"]][<OEN=B<%XFX%Q#>_%'W4)?0+!M$URHY3FUNV15;/@;61.HC>'!E+:
MHLIQL=EB QD]YKVW/MX^:EE^TCQJ=,N0YGW/TIPW;.WS_P\<7_VG_9,5O_W3
M_ML?:_"G_4/MO[(LY/_F!5[\-7_[WJ0BFOZ1:X&/Q2T(>O,@.>>KO/[+7PC_
M,[3_'B^U_[0_O/ZG_<?S.F-IU(S)Y#P@7AOWM:036WF0I/"S3PKGUC/NCWD%
M?"L<;I=NI@K4I(]O3=.]^US>DC9Y)_V *PF5@"LGMQ&@N$88>-$\Z/9;H$^Y
M-1CVLF$ C74B5*^U7@2@[;363\%OSM(O;7]%KA;,<=@=?\_[RTF]:"VM6Q!.
M/&#+B*48MJ$W.[-- 2V&X7%&\)W@KLK1X9B*4+3?-7=6AWKTDQ"QZ,#[H;OL
M52FX,3>F)8/0@@#.UTMR7AK#WH0^(2SJ7![0K3B-+I]PCAJ6N=_.?1\1%U62
MOF7D59*J_\71@&4\6SJ1BHLF7D8 :DC:;I8#]U.]:EE5-9 <L+GBE:^RPE.]
M32C?4V?Z4><J,B3+R_:A!=YAO5WP:L^S5;G"\BR$%TH -SD:@=R& >$T7H9
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
M8*QS>9!/7UCBN)%U $2H4Q\(O4J>)%<H0[05'_+>>[M+>QY*I/M(?I+AR*(
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
M&+^;/SWMV[<6[:E7 1\E(&K!/,CF>NE0VTG[)J@(1HJN6Q)K0D^-+2SWVV/
M:IH8%8@QSI[QV98]LR?2N(>[=8P5BM$' RR=VSGJ27.GQS;5#"53:)YV@]=7
MYQ';7UD$G^]?M$(?-(D?MPU+JNSMCKQQUE>UF5A5F4=@GV(LD0@CGLP AGA+
M&%=F7#<S%;;J=[6U=91\?K\NR=L@-6@OIY2C$CHRI:B2U*U@W/$]APTZV^8*
M'J1#R5B6!W&+34"LKH6X@D,OD,MYH8.;?(Y0)GHCOX8P*:7#M4>IR!V8V\/P
M71CX\"OZ]-HT,?E6G6W[*!.)EB)Z99T1=I+N>O9:4ZK\IB"$LX63CO"%@=%9
M26YPD07UJ\C[GK 7\]HJAV2'6B=6D#7Q78$CXR>_D0*D$C[]O'GP8-[# J@E
MH0L%&.":;4-YD).<HOJ]@*G(8S@4R&56,\[F3OI&))I%ZAQ\_/UJ2?6VNYT1
M[GN/DU2UOF]'G/WKE?M_MY(_:]=O)<O>4_^[S!N80]&M.V$@7R2VA&2+U#'T
M?#<J(YE&;D[.7;N:Q>$C^ZS,U5Q^9MNWWZ>EH4R&9U);>GXYSE,T.$^QOZM.
MAFGRSQ''%)GMO8AKZ&VSNM[TU%;<CEH4->*M7ZTJG45AIL/TK6VHYP8L3QUL
M0_MMN7;PFV5'_(]=[9XFZ#V<NXA) @^R#7>])X6KR4F#[V)O9I ;"4E8B8&8
M?!Q]A:I_+P 9EI]QD77Q55^)XY3@5(^P^8W.NE/[-VI0HJ%8G$3CE/QJ1,@7
MO^L>996#"OO=$R;LDZ?CG=\5E.\OXQML?L+*A<H VI-%J303$&6J!G]+1C%'
M07I^HWAT/]NH<MCMG*P+0[WE>]D$23)UK=CAE$;:[I_[WJLE*?5:0H0&H4IP
M(^C=C;;(6NV\4 ??\)YF<25G4,P5LT)&F@-^24ZXNI2%H1]5E9;7/-X'2>M3
MG8@Y3IHFCTYQ1=Q>8]L9<U#)1>(56%*V-F#XPN=D9S-.'H-X/<*#>!P_W22;
M/;'5TSFQX,+]!99=<_2G+K3*(P^FDBAJ"@GF1TX,$<2S',P.NG&X>L[:*:K2
M]9:PD+11\T/S?H:^02,%EH<%9EIQDW5D:?C14'ZF""/D#ER&VPI7 S5L$=K$
M ">YAA.=9\JD_\0JNB6?H+UXT/74D=M1NK>TZ;S2O):.JOL+\5)C;89AH^L1
M /6:[4[W+]P@Q.HG;U+RM:P?*)S.(NCD12*ETDXG7+M?>SW/YL+':Y!7S^V3
MN,V_I]:)T?@J^^:>1+(H5X%MS B.AC62I4Z\\"T-)5K*'!QWJ3'O<JOR.*CF
M.TUWW]+]\2BD-9S\U99*;D"EX$NJ2(@$5"GMP2CFV"!;_JJQ:KZU<KN.3D[\
M%2LSE^[8V,[]Q=](MSRWD1XL(]D[AKGGM<&GQP?J3DH>#S);]Y-_86DT<ZH6
M5X9JN!TQM<U5UB^<VZA+NR4NKCXS\LSAB_^B2EEQB<0"3K,GQ'C[TE<6IHMV
M_3*;!V%=PC4ZK*%&EMJ,0/"K%^(VDN6PAIV3#T\Q^!V H%S3C>!X[9,/GIED
M>]B&!!>W[TS=MK=%YO2VCN8W8+;L98B00UQ/O8<JZ]KB/H#19O;$PV$V'5>[
ML:17SA9+ZK1OF6D\2$5.E?'E#7QRK3W] =,35,RP^'JM[#92O7R?2OVP_EAY
MHD],2$1B?/";KG0+U9(&P:QOD*V[S@D)L61PC<<1'JECG4R'4DXQ=C/0.-"D
M9Q; >1<TZ&R5+.,;\.PQ3*K$P77WRH%OYU[:VUUS=YNN1-#MB3%^]"I33D'M
M*;I52[AA VP[$*6D80&TO.WV5:IV7,2V^[V[Y"@/'_!];7WC_.%%EQ LTS T
M-[FVD8%J0T?BI'&7B8!!%?,%<.<-@)UJJM<!!JBWG=L4R-%2UW%B8Z&)%TK*
MC-P$647*S]TL+MPHE;>_?Q![CU/"YJ=8ZW%%$X:-A9D!HH86G(>W^CP5(9 (
M/Y51<W'C:Q8*T$NL7J&?EW='NN^*.JSR%YO4-B) I'W!("9@U7"-!XB>Y)W
MJ+<'F%K?S59ZROT1K+ZHQOT<*?\X.X]1RZK 7L']?[6)T3B5N=J+W0UT,O4
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
MS>-2RM:=7T"4!6-HQ'9RO?D9>4QO:IWFQTAL,E2XL/&CZ'4HC/*E;D7;W/C
MJ[$G\/YHBZ^93LG,E_LFMII3U&X17OVCFT*[&"D?WP&>I!"G'_&3=5;-AG:,
MQ5C3ONF*E!_?OXN^&;8]M>48-TPJ8+C"&V0G"5PCD0>!X+R)(]K<K=T4_$@B
M\SW _S84VN*J\&7MR8SCVKCVN<J/5MWG?S"VG7=P^1SJV'2?<L0V:?@YQA)8
M 57XO6&BSSPQP2F5O7W=D8&/-E:-4,%H#*!Q7DAA[[<>EG+?ORSN6LF70'U*
MFE5$MY0?-/8RM#J4CDT#'5U1MXVVQ+K*5J(/1Q%]""-[ARE70\NFI%/9:M@=
MI8R@UY6W<%N]XVH>')NFE879B^/"/#(\-!_ZQ:SR=WP<KN)^)2K5'\/VH,3*
M>W:R04A8(R8-IX=&B;@$DNIW,I2R\1%N^:7FU^KB7.YGZB25O(D\6!;VX=M+
MA^$B\.*[0LLF9YK1@*8&[0#=:BJVF3@RW P5-9:GV[I\9%S,JDIY?VBER->I
MJQ+MYR=PP^'2MZ**0KA;MVKGWD_++<(ZSGSIOY==S6#$ !;+!@0U/;@ZM@M7
MAFR\C6S-UF54XKV]7X^.^&SX/;3[<93E./(C@SLG*%)JV-H]HYVT+6%C,0'R
M:[C-#E=^%L08@6D>)#IH,C5Z="F:NWN.*S[ UA*,'I].&C926[\J"O<[W>X;
M<&A;1ORAJM.%]QY5[M)2TUI'\H5"F\"$&2.2PS:@PQ\HQ212:'O&SO0M7&55
M,HM/EYC(,2^8\,\Z#8)D@Q.HWX+]$B[.EK6EYM,BJ.@19/-H" DEQ];H-];-
M!5ZCM_^4$*\8[=F9;J5>[O3@FXZ:_RBFE+R[8UO2.K22N,!@U(\QV;\7G A"
M -2D;X^R%UFTG+@]%->2O77@/6UJ4-<OR.&JS;NONEUI+3IIY7L?F-1="WT<
M=F4D&$K0?"&>S!9A:<WCY'"3A>$XMM33L<G%//KZF5[L#I=0RV47_Z,1X,@9
MALC:6"EVH@5*I:HJ$E1>YH]H?WQQ89EBBB[]1V, 0'/!FV0=Y0[@*H@+!@A/
M,.I03-P73 !5L4?!ZVF!B'6(17'4J(CV8/6#K@?G:B,7]SX^=^>7ZF%Y_75U
M*3XP2N7A.A@T/7-A_AT;"1QEZ<S7[V-TV0F6HV(RE7?WWV(]2TP?V['G8_K/
MT5-RE/$AQRW'@POJ)>K%0#X_C6OTQ^[P?CJ3J(\'=M4-QV-5@)*,J1;7 T3.
M:S9,V*7KSCT9QDGY[HKHZF 'OXMC/F4?C1]8'>K'/N\[KKR57D6I:H5)<X?1
MC,2IC&3_W :R\"H/(@I@N9]U,ZI&*U^JC,\/VWWJZKHOZ9UW2GFJ6B[_TOV;
MONQK' +1&W8/4?X<)WR+#&B8-2-VALHLF29$0..5!8=7X]O&'(HC'!<(^_R>
M"AZ776\]J1C:-"D!OPOBGS<'Y#B4'*#!3 '&6;<PE^B%<$4&NDWTU.FD4%/%
MGXMXD_Y#B9+>'IEZ)YVT8&JP0V5A9QA[?E(MU'<\@7XB^HN#"5P%*A7,O(J)
MI:DT$WHG\R(#%E<K2'<=:[4)):)*&6)W-Z\4>JM\_C;6&/2FQ?B.FOP#S6K4
MQUH&*@S\WS &GC*<7/\_V'NOJ*:B[UTTB%+52)<:I7>4*@B)%5!$1*4+$9%N
MB(A(D) @2&^""@I"5$!$2J0+0D)'FDAO0D@H2I-$)&Q(X83_[XY[SSCWX=ZG
M<\89XSPDFX?LS5ISS3F_[UMKKKVT,",D_MOU/[0EFN7V6SNT3Q8P*K8=I&:?
M/%PS_%'V@'R',!Q@<_225FGV\TA"*845<I,Z%JM=W2C1G)49%X#XH>\,3=7Z
M=.OGFR?54LL^[KS$?OD4DU\)@YP^RNZ"HL*QWC:3'G08)VY#?^^"*FW6[*@B
M-ZD6\?]@1U:,'FB-UA7 IZ8OAGRT#I),L!+LVE%\>^+^FZBD))%E8O5Z/-$?
MESPC- KS6A__U6R2^;1:*U1I<!.;-*,>KU5BJN>W?>G//412Y,JUQG&7;X)2
M+K'JZZ<$A-C)'''YE7Z"]8Q]F-T"J81%PSR13Z1NULS(4 MBT_:/796BT$.\
MTL.*QD%2OIXA:7$@S\_O;AZ0R_O_6T+=C!6%<F([JY8ID=T$K]&.9:BALC;(
MF;%0@66Y@\,-=I"XA_LAB%RVR]/76CA;EXP(Y9\X32C\CXP48Y"3A6S8 K$T
MSA>'Z?/YX X39W&[H/*.6IJ Z^-Y;(LGA2-3Y.+)VP^3]0T5:RLSK[TQF>FM
MLWMS;FE?^MS#[+W9^?*M3C"@EC]SDFJSNO<V[F89CL]&P 4?QDT8($6GT?X#
M#1?I&JK'0JS\PS2$E=-#%_EBO+VF")>DPZ08#Q) --RX!1F?W"!(56.ZTCS.
M9UO3\&TZ0LO0DS0,[L'RD*.KG\CKXY_37KSTJJP4SS#>'ZG9P;_BYD#&34'H
M<\#0K(X86I?#Q&=?0(VHWLGS*2M7APIH*DGZIXD"%5]\YNISV1IIIYN_^2K$
M##J=N/_NK^7.,N>_DL9OT*_](-[&CN.;8!6Q3X,%<Q[K<*'<-6=H'H[YPW\J
M!G]>_K1> S,,27LI27W7DM$T#3?&-FL1#F"&=T$\1,3Z9"LEI(.37\+:W(2I
MI/9=4+QAUE:40?;Z$9^02THEXH,M%P8F_$2L1<HGF^XI'-8]NQ_\]?=;\%%6
M%D$.(+$E'#K ','B':L\% P6!3X< K<:;BE=20.0EO%OJU1\89ICSY=KXX>V
M0KJ>\1EON] +@4Y._KU#LUGSV?@-H9HG>U!T6E*Y_4[^1(D/_IJKC:Y";>9<
MEU *SOZFF.4=G!0=9@GQ?D%:$C[^YIP6]@(G"Z>9PF:QD[5L 5^&,O,.(+)7
M[,E*UX+R^+#U!W"M!%EJ'S&YI.'21_/2@-Z=K]-.)Z+BYV.[H[A>EDR_J?CV
MA0:18O?C:FL[4P$EKT0.<CVE632M69REA?[0QW,#/93YK.@7!)G45KINJTQ6
M=:7F+LBW/FNQ^Z?ZY"O;4=^IOK\#1K5+UJ)<3ZB%Y,*GA(-H;2JI>1TT'O[\
M'#7WB7>>3TW^KZZJZB?'HO5(? DP >;M_VGOK_H_G_]M7D_R?S[_6P^;AAP\
M#@<FI[W+[C0Q,3GI8#Y,.6"YS#?=;L06MV@E[D >PIE2YW=![0XZ8Y^MV&Z<
MK+</ONB]5H359?1]TI#X'W[%X=^""F02"UROPSYT?!=$*0K'<EH*\]@%/='9
M ",LMC-G$+;P# Y+@:RYTP3G2*D&O*EMF8\(TI$+<QQNXSMYJN'E'?%+HI!<
M<\A)K3?>W*";NR .E7&G\<XZM,D:"N*%IZ=17LMKQT>JBHLF*):O(WP]#F(L
M;OWYUO%HE@:/ZEPZU)I.@7QDN<$=%A?H/WL:Z^JTJ,%$@S6\UC^H<6#-@;GP
M3(7YQCH\,%7[G;[T@W7V?3F6?!=]>A?T;NLBQ[[Y,*8=A%JQQU1^,-YSC#L(
M8:L343ML7C;F/_T/3ZW)8_:L&WXL@0-.D,.[H-_A UBJ+W@7)&;!U$R-Q?Z#
M_B8"^K&[H(2\%0"RS8 P^;&OPOQ@O80-OP;<G,,:F2'*[ILQCB*GKG$S')FF
M5(>X/U7_"#4_&FPI#"OI.H13CKUG@J]8MWC"F:,'1:0?2VWZ%*3XC/K<=;"X
M]FWYP5&YIW*;/;]Q/%"(#^2HP7H*W5G=*,'4(F]\R3FF2%WMF9-3U?J!>D,C
MS3M6K]^466K.C[DMQNX=N3H-F\W >J5OL.54J"Y=T71K':9FCI&?X9EFZ".N
M^?OA_M,-TG,0?N8%:LQ+&G>3FV+YZ$.M$.NH:P/!R;I+WC6$JBR#=$E*&K^3
MPD-/3T]%W<_'9L<6X4QIE0+?Q^O-N,G."V/Z4V$]&OV3O]H_3T^ZME1<-$4@
M[Y:D)/%Y'GMV]NBQL:] #_T;CLV_QKB*YGA'I <*27>:F,7).NK$LB699[_2
MWI\MG/J NRNYJBWO8HXJ$Q/RB#'H[B,<DPTZ%L>]VI,8IW4LK+AH4/7]N;^7
M% [<O*9[2>4M=V,H;G6;X8WI(5:'Q#5XD)$3G7/0YW/2>-!RH.^,9OB1+DUQ
MA^L:%6TJD_*OR!#HC5/73XR;VGNG8GWQTBA_>C?5836'#(NB3\YS;).;1]'R
M;^NAP!780BL:QFNS6F9UM8A%7^T\RWU=KZ4TDEL,GM9M*[#Y94M\"!(L L=/
MWN4>'PL6#).%MLY!<<'A(8''4E3EK0T=TBT\6CZ"RE5^9(%8DN\)BL V!^S#
M:+%--A//K3G]C_(C51SX\XYA!K=Q-R5HUM B5>+>#NIXITB[>C DU\Y).UWY
M8:(R=: S4U?_64>(^F\TFG-7TQ*6'^L/CH%5$".PGC!)U"(\<>9(XQ@!@GIN
M/O(06#/83!A:$[KH]\'+\Z#SL;_3X5FG/(+4-.-\N%?K:39Q).IU&T!EK 4"
M\<,)$-0Q4Q!!]&D*0NAE, Z\XF9<7M-0KB36E"'QPC34P7X[@OQDW05>WM\)
M2<15.319ZU!PG;")U%O 68K_U^(O!N!]0.SUA+^4_JX<BM/^@0/"B@GOAM=N
MQ<P*Q=Q#)F$/L.68\JS7&*/E7($?[VL;:9A8BFQ06PC[.C]^7:D\+>1;=Q[F
MV^"IY\;'Y6W3SRIR']8!-+!,X9F'D9;8V7<<>TT$% A-G0#2/E <5+AN;O]\
M0WL"/^_P2X5Y1&<6UTJ</,T^- G848THA"CQ//(N2 3P;G/&%" U3];=?'YK
M.+/7YJ23_05%$^CA,3OW;_@B]C'V*/%(L$WBC ; S:%@HD.$8ZC")N?@G+%D
M>)O<21/QUQ]Z0D2L_0L37U1]37>9.+X/J7E.WG(^/O_UP3@^WOIKEM><XD"'
M+^%3H#R<K.%/]$(F0LKA\;L@?Y(8RJ5-[BB!"DO*I\(3"3(V,@[.?<2$_;2I
MSORII[<SKUMK#FA>%7@W8_6*?JD2SDF;D:EH&^ LXQ9:C?62Z ^9N !<8-Y+
MO6;#A4IMR3V)P!S50<@[Y9</#ZW:4P;A6LV'!'^V70T\;N=]#7P;X&?XLKLY
M.54E!>U+_44/ :;? YUV0*A9OMP):P&+W$-0E[23T= ?$ETO4R<6OR7_+.O/
M#C //T?4A'E!$DEBA$.<#KAR["P.KQQ;[2QFVM#L=D%Q4(B-YULG?\,=ZQ=^
M!+F7^1DKU^I9PURY9SXE*+Z<Z'+L5JRP^$/@X%/D( K>":%>T1'#-EM4D2;\
M.W3[9J4;'6PXP--:['J]=:W^$/U-K_:HTZ\,Q711+FGTY;\OTP+YC[\ A5=?
M1'/-K0/:$DF8H\SC@!7# 35%!]&"8YMA<9VM/_QA0F6F=E[I/B%25;:Z)KZ]
MD8O+@\9W_R;WQ)GV9<]96,3G[UC,;:V]]J3VS(T]W07=A3]E'X!+H>UH&<DA
MI>/ (]?;OG1GM]1[*S*3N7D/Y5^OK?66/>M<:-5/OSQE=Z*LFVO-P<&^QK "
M#K_5>?!$AYMOP?U/"3Q6PBC.V!HL$BN):YD,'?9H5F'B0]Q$[9SA\SD5JO;G
M>H<$E8&#'+>8T<T0XN^.^W"*5UGY/E_S,9H;DL$!WN:+)015S"A&B_6$ &4J
M99([.\ "OP/]Z9/R*XE%2[D* XKW$S_Z9A*N@$TT8^_&*PI9)J=5K843H=AF
MF<U2D192]2Z(*2K1ACDVO+:JOP:CQV0LL^G+MC+VU(*T4,5'IP0^O2U7B>!2
MCH"9^^"3&CA\X8 CD('UU" "JC:ML/&675#;+HA;LW1Q>,H^L4,000EK%."7
M]1I%_ O5NF*#6,B[&J^T>J/JF'$\_Y0KJ0,'J$NLKE'GZ & .^,"T[0^L_,(
M$TD33^8$TU.3J\]5GVRRK&[<<S%?5VW/]^&NZC_6*V]XP(G>T02YY)#C0ZHN
M7%VG@"=C'5F)_[#Q-97,JS_0:N#X8*R 5@G%)5S;R5[QB^Y19EXFJOG,0E,:
M_S7)2U28*,=2ME!EM :K%FW,X&+>8,4%]Y"D43UGV=/4ZJW6=9FED$G7T6SI
M%U]?+HYD6Z5YUJI_IUJ(I@R0AT+.-E*?T_]0\6U80-TH%>:>F#J!O$'MCV<J
M40=)\'K::'EP85568Y2;Q4&A<S5XC5>"U@KX;'G=E[?=KP>=@=@.P)71\+V:
M)K3U(/00P*#GL+*PGHX81;0^X!OTJ16_4@&LZ1?W.?H^N"17J)WFAU"Q&B^=
MCUS4';*^YYD^>?9(VJ/34P/$V4\X?L()P&(6FL?0\LD@J(UB?1IU;@X3($LS
MRJ,<58[(JQDZ?BD84OW]V<]Z:V[+9]NVYT_Z&CU0L$@[ _WXOJ&2[@9LT!3F
M?&B+B33OV2"4R"VJ1(I+:Z:][<I*T92?%>MU(:E@L[HI1IAJ0OKT\:X#C_+,
MQXF+FR:@#7 *K(:X&L70]:NIAZQ),*Q1TDVU(9WB]FPMFD%-[A@OB (S&PMM
MECFX*48"7-HQTC3"$P0%Q[?R:"<E!U50BD0H@F7>GKQ^,Z4ADJ/ROG-XYSOW
M&&0TMJ+>6O@+<G*KY5-SYK&H W\L?HP-$6MCF:*45KHH,$:-)?/&8;WZCP)9
MX$2,IJO@59I<O$'EU%1_;9!Y!JTA,Z@_22RURW(*MF)^& 3-?T^P^"^5:T+;
MXLA5I ,K@J-(<>-#KH 5Q<R[60^%)[-86XDE!G'5TU!)9E%>YJI+^N""L<>1
M=+N6DZ0HR?3UO8FM/#?8J+Y.PLPIUC.BURNH,@HYV_CG72'0XT"DO1N8LATN
M.;Z!KV+)*5;4&PTUG926M*ZR-O2X)%,L!MHI2]B CV_0"X!0QCU,;^Y!UB>"
MF*-?1A9O\L-@XN?*T5+3Q&)L3AZJX$I:W5V+6T7J4R$:NL]L"OZO PO%;CB/
M5<$..^;8M)GT%41_OOV!0E^X<\;F;%V<I(%M4J'2T>*:*P5'+W9?[1+_71;"
MEN!M@>^H[RVG-/^$,%TAU"][I:D#MM1?[,.S''*\DK=\BK2]J<,\L M*Z]]<
ME6"R4MG[B;V_/_Z_;T;O<8:K0!IU'<Z*:@C)_^UF-H ,*&#W_"TM-;"\FT;[
MY'RRI5CX/A?LC/]@5X6F&^*-^V=MW<CBZT<6%Y"9N9=-1P?IC6O!F-]_-QIV
M0;S/Y[^\07M*UNO_@KK=K:N37^@)1X0YTQ\1>G<R$M@/5W[C 27EZCP 2_]-
MQ13C_49'#<NGEL]997>-JHZ9A#=)>AT[F,X[/+961XIXT*V+-C<Q3CU=P-^?
M.3Z5G:$UR1Z9I%>OLB0!+XM_3U."<MP_"_>$BOD]BS6J(>KHOP@M77VY%C:Y
M,@*INNG (=Z"460=EACD,';V#YBMG0K<@O!C?W\$@C@-O8^E!0.\PX'$C67X
MWJ2WP@YD95SG/Y3Z]8#MK76F-O@I\=]-M#''<;_ @/KJ//0Y*CAN/>8U>5W&
M9VM+R4HP3.NJVJTGPVOV*OL^.%ZY);^@_N!2Z,E.R:=O7GA<UR+JWW-XA7[
MJL)Z8B<JV^SE#@%3M-;S/ZH;KP_\J6+Q.$WZ;Z\]6_-_@N +13\CJ64&-*&^
MH_ V^&^P>&RM3CQL-H%(==@%)6/%B$ADE#-KJWE]4GSC?&8S4?J?M<&ZR#DK
M#9WC#XNCSUQNEY:T>1';*XT>2;%54_O^$/<1LG\7Y*<ST4I/MZK#>O>GY(K2
M*GSIC\8<_J)<7".W$>^_^(Z*'(]^==RKY@WBWHF3)X[=*47?8[W#\+&_RTG5
MT$(Z8?$[%C&:R$V^5?VQ$>W(+FR(\B,7ES8]I;9>+OE3(V^B58[R-.313P!8
MA@J*2"&UZ4QMT,UHI.C-=3 Z8*"*JW@&==5R/G+]QI"+K9/V_%W3JS0WET[Y
M$QQ45.I8-*".,25TZ"W4S%4+C@MZL=*P?JFB?C4$M1]H,=ZX?_VB@'KKC6I&
M0-).]:<IY^6#M<*=LO@W5M%9WLD"$]^,N+Y$@(=A47 9PA',#\)!R!$"/_/\
M(-,J+[&K9*%A\ _WML2UF@G$@IN49-H7U!N-HN4#=]"HO6(-3^1$("*?E4_T
MP?$  J?[B'<SV]GRM4.#=Z;HT;[3YT46NB(.8\S_X9^CM6C8-A+5&B;[$T6:
MZU]ES=E( KL@.@'X,>8<$HTY7)8=[DYFY ^6KJW=4\S8H?=V4[J;"[\T\AW7
MK!0I%Q(,_<6413PR@ $*?_U-.A*5<6I &CD[7G.3)[Z@XM'K6H6J -KZM=X2
MVXG'Y%<RS\!U4$'V-">QZZQ)4[# .0P71V4?,O4NW>9Q?P]X=]"-:F..?6UH
MWG^]*OKD][4O6W@'?,<N"#".ZL3QP7Q8O+.\4;#;NR#IWP1MUD?>]F)I7$P(
M_'#U*:0!XK2-H[=>O^)H>Y)X)+:BSI?O2@?\3Z<:I+SF/1F1Y])I_LK<=#3)
MW<HCG=<]"S1+@&%&(97@U<(/OI-C:P:,<R@],NL#_G1SP2V@LRUC\H&;98+D
MH,+ICP_>1I[YSB6YX@S?SX:AP:Q\YA&B",R[/S%7AE8;Z[9L=7?,5*OD?+C/
MD$4R+=[=ZWI/6MJ;I+%%&Z:87CNDFK>%.*771JH&KW$\?;\GM7\-PC!">;2.
M/O:*"@L*_.!OQ#Y:>69HV;G$Q+7EBOVE_-N*=Q),L_F,K([,7"4RQ6#T>18.
M(XIMKI,B=9( 9:V,6+(-#XIA73. EI2(>FA9]4K_Y3"^]W&"5F/]^ZE;JHP'
MT!\"WYTJ'.]&A&]3-^@3K'2")O,"A)\MC?F!D1BMWI9;TES5-## UIJ5RR]H
MY3,RK?GW7_Y<^2KN>,OLV U:V)Q#"S(" X9"@7Z:X&7J:!K]2ZE'XTC9Z'&#
MWM(:#=23[8+74PN6S_3JR&<-J!),"0CY0.KJ<T[W3E:.0?DUW2 TWE6R490!
M-E8J^H7[U>PPSX\3CNO73?Y$AH[$6FP<-3POU4J-7>,/WSNYM+D9Q\=4*'%!
M4/$MI EK@I+/I&;^*\I8<&QUK7\Z^#!MTJU=2IC_W%WULQYG('D0/J@16A%@
MD0UIQ&9<G(EWW+]O>,_*NB]# =S9+A^_";OTQH(/=J75J^VKG[][<.P&_,T
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
M:C1P2S$) OA?&R5(^$]F)E:QKOF73QS:,MP2<I)PT7@:IQ]M.A'#8X3NP>5
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
MIG]WO_/="@UHQ:U_J:#+A/D0YSIW00=GPSRZY;A&*O$%)RU.6:C*;DXWDM+
MBO:J%H57:/]"ASLZ[9 O2U: X7PO7'H%(8;:!<D'WIF2!3N]3XR3Y-WLUQ/T
M]S]_]BPN$+>\(7 6=ALM6AQ+UG_[Y+1(?NI7S[Y^-5)6P.*8\J?U]=_(449#
MTF;7S;,%]W"2YRQ?U)N_#D=8>?CJOO.J:)+189RQ^(#949+R8-*1U"*69"D1
MSA06.,-B-@ 309<?[()VBMJQOZ![?Q;+=D$_E?LPODOP7\+_1?2GLP) )!$7
M/SYB"T [<G;NVQSF+C@Q^G#U ,<Y6/8'] Q"ML6,?@K=@V4SKV<Z]W*IY2A#
MG*3WE\N N1!2![D/^?-B6O$'58./N-MOUE?7H&M3PSOCYUZAD$EW#U;TAW-'
M]T7>OG=2FNNBYBG*]9B0%$O3",6[:7SX=RZJNMEWORDW^ZTQ)G_WL167$E69
M(;C-XD/2^7\0#L,](<EPL'ON-4I?YPNY";=1ISJJ1SST\]4A.\5&M;!<6,C@
M/5EP'G!3^JY-#Q:/2X'[02:+6#S[Z7( DM9.64IVISQY 1\F,5\3+S_#BU "
MOPM?\RB>=5U*.Z>.2K@+CE)(4T'DJLZ]G]@%";!DO[>J-E#'RX@GQ);LZR3J
MQOTTWSM^%UK.S)XE/*JP_R%]PKS?0<^R-HD\&_8YJ$W?>?B2/)>M!:=0VX&&
M,W!Q K%,3AN TB^BG 'X7K4(-K'%4%>'T?+H00BO^L69,#BI("8OMKZ8Q!EG
MJU WFO-5U9;3*%."^*1+L_T;*='.*@$ZQ%;Z)AN FL6J #69I!,+$T(=H_83
M<"@?:LE?[/BA$\OC" 2&!5?C[IA K$>A,(MC:B8PETJ%21G!"T@Y!]<XP@5]
M92+N   V8W50=&+J^L1Z/T-I!DKM>IX-<A4U6ON590.,<MD.M&?$M^W$7PC>
ME9R(G));W^UB*V("!D)L2O.//1QVK2<'G(<\0?,!\_338036(3P0[8QCF%/<
MBTL0Z$^/@1"MEK$3[OBF,:.*4@=I0=LD?;*HQT\6383:A:Y=T37*>NE5M;PC
MEHMT\_)K=L+7/7)-T_IE=1T$N5)]&82*9I-GGIG.DD=_G:-<P241V-:K;<U@
M V4+PWJ]!3#74A@3VV+BCQVEK61G;Y,R-;GW1Y:8JRUM "H3/=@H#.7&''"T
M@7$<&94;$9H .X:R&FZ!OPJS(%6T+ <GPX4N/W#WP.=]P6J,E3M*3I$6^*J-
MD?)GN!98V#%^.%\8PGSB),JB%/!K%[BRM<_16W#RU8!NVJ.%_4$<:7L[R+7U
M@RF'Z2S>#?8PPP$.NCO*A,KI2X0+,_8AHM%GJ?CYU;IA?#/B)+E[<=V&++'A
M*-)@C,SMNUY^(2,(3YR+D;)8V]N@.DZ%K"62(I_B,3$$GE9.2'Q(JT)5_N>:
M\19#3%#PB57KK$K+X 9\DV?)706%XNL%;5&L9&_=$.R[+]>*OX\+SMA]-7)]
M7_\^03^P4$+UT^1!GE7/D;H9/>.J^"O#ZD?Q^(848Z2OKZ )^<('*RN0BES4
M0_AI.#$#+K6WA9:SB/E0'T,798W-0JN&]-WHL# "(JGG$N'];:2^38G#U]X'
MQ;,K@\*M:U"[D#C%A#.2&:^.G)UV9.O+ [L@5C?\,,9Y %""1*&E4#XCBE74
MA@2_#=1-\HQV<&>.3>BFI/7L^?##/:!'"MROD^;Q#Y(C20-@[XB*DL8R3VT;
M\7KIUHYP@[?Z]=-QTKV!&L]D9(3RFMDLA:&$BG>!XW:X5T6)%IP_'/6'3P27
MH<\"$32#8[Y&I^^/5U^.N(O]U+\+.FYLTSUHPKF0LH%IVZLO\G![)WW5@&P
MG[>)66>;4^ >^R5_S"$;J *U'<QLS@9^+=I6(,$CY;'4O55+?Q/<R'>5_9L6
M-!JP0;G8R^*GTOE[@JD>'0'XW'CT$6:3T;@3OQ_T_NW8W*?352_"K87\Y#^S
MXSDC'Z"9E@9PEV+:AJ7DL ^HZ1VG_L*M8H(+'33SOKTW"38D:S?2^:M1BA^B
MM)]T^I-.!42I_1I. C%:F6GZX25[=@E.K(?@;=J14_.=.:WB(W!/-:9R-X&'
MX4KFQ^-'\&_6"O/T_C(XZ78,7M>Q]"K!%%Q_P$F[1EB\S0'</H&M+UUC!T=<
M^A9B*WG(=K P(&]&P<7I(X(C'J^PY)M&?EU*VJ'Q/HW)XUFZ7&_ZN.8*^7Q*
M2!Y3FPJ-:5&;-]"C0[KE)$>V?"X<"? ILS76CXPWFB*FI+QX\'WMKQ:QQXH5
MY;PB-XZ8S*=>?*LB >(8Y)AZ"#O$CER#6S50_ZRXH8*2'3W!4O1TM(A%G0GR
M)8=#K&*-,E01#G[VSQO6#\&<"7ZWXF0$?18' 'F;'DBT%((AW4"-<C C#\2M
M=3]%'Q4P'!A_:7C/3V!Z.IZKIL0J6 4\]U5[28L.O@Q"*P-8\BZH/9C=HW;A
M,+AS \RL8 E/K:AY,6NY\Y#=I7*^^_P&GG,KZ?OM?VY3R?#8RTD Z)"VTS&N
MNZ#)'SWP.BYL!_811A!]2-80 1"*O(\+C4$KRDF7!@O';L(GWUYYUZ=Y-:N
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
M^*"[#AVF1WA;#7LY5NZC< G;78KL:_-=JW]%=#O(7W<C[XGP+- ;GO*ZE)@
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
M);6(,52(Z_4V5A12DL90VZAH'"4A)D[3OD/6U*9_K2K8[GRVRKK-_2YT[3C
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
MP/]-_[92VES6?ZM]M>_H5M:9E&DN5987$A*N>1(Q@B$K*(,)SC4_(HQ4Y!3
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
M4O(:B] AKXU^SCC*^Z2M)4T,=ZH)A^WY=9IDJ@4B,B84*\B2/($((VWOD+R
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
M\8 $)IU#+&Y VP\D:%^0TW#XI(^#$29EAM/:'7[T9ZX:&;5?>^#>-N[PG3<
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
M9KEIQD:8@OJ#BTP[DRB1A!4ILV_&UG_RW+ZV6CAG__\Q8)<_O-$P!#^TM43
MK2?;*6VO:<KVXGG3=64[I<:+MFPG+QB?OK3>O,Q1V/61+2M.E_\IZ>97NGVJ
MFY=TKU[""I$E4D*>FO[LG$20$*1@@0HJ<A05*G;RW8P38VX?MI$1R)4P(4_O
M)*]-$9#&-^[Y32.FQ,[G$Q[HP-31*' B#ZK3X@8T>H!Z-CI-@IS]70>F[Z2I
M$9),GD@U'JU3R557/.W*0M1-?UKQ3C^\+D96KL4BRB,1906!0N\9]&8AI1#S
MF$*)(BQ3DD19BNQZ,-H,Y_))3M.+<5\(N15W9%7I4]C:D9LOO )36"?F3=>Y
M6H!&TK9G4X#:T . !*D$?6J\UZG[/*#YV2K/0_<$"*O:UVI@&3$L(B'CN:80
ME"&(,2D@3O-,R#PG4CG5_K(;=FYFU'_\=OOU^_NOG_X3?/CX^?;SVX^WG\#'
MSQ_NOOYZ^_WCW6?PR].*/HER*X5CYKCE+-B1C7]L ]/.I4"I,.7IW6":+"SJ
ME8I=N*'A% 3EJZ#%5VET*9=EFW&T,[&^;-:JW)HT@0]:KV_ROK:UOJ_W_6Y-
M:J1)9$&JX%(J#'F2:AH3601Q%A.8)K&2:2RR3#FVH;M6I+E1W$N-P)WJ[6<:
MI9J<&:,6Z/0"W]>@K]FX+"0/\VM'D-/.6F#R/)BP]8D)^\5H]!>@7DS9UG'*
M1A2@]H6RWYK45TLU<9EJ7R@>5Z[V]F3/[41^JZ1Z6GXJE5Q@$3/"(PEC;-J(
M<)%")@F'*9,YCEB6\UQZ:2BR'W-NC-Q(!DR=J K\,J8ND0W0=LSI&;[ U#C8
M0N0&[(!5'N.S'!":I(U(;]AY-!(YQL&ZE<B)6]UCNFXY7S_53>'J<FNE;'.<
M"X:4-@ +2%BL($H%AD1) I,BBC,FF4ARJZ3R@3'FQBQ[,4$GIYOE-H3G,*%X
M0BDP@00%R#X0R@-0$\4Y]0![;$7UE'IY 8.!P*1S=TX6=W1!]'Y8T:5+?8:Y
M]X*4WCSO+VF/*FY-IGT3F/]Q56TW]=M3W9F*8M]_T-5='?E4_4T_8EM]7#6N
MR(^K[:9<525O\EJD((H0DD'!]#\0*U*(19+"O* $,:%15,7U8?2AU9@;:=>R
MZOW:+V*]7-*-27(&E5';T2A\I9?"SLZ<_U0'7GGZ"08O:L'U, #L&9Q,1#!
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
M].0-]#FI]=OW,]FI"'HZ!C&KPTY F QN+Q*^4NJV3W3/YVQ['65T1$ZY,L&
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
M/[$:OG"<X?5)FQ)2OBS9TJ7A/K=!4]6[)[D0/(TSJ?FMR!+CP64<8B4Y3+'
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
ML=&9*_O%1$V:O8FW]M7.CA0!2X32A*$<Q!F2 &69 (38^(F;>2>A*#/O@4_
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
M;QA/E?6HH2]46(]?<6E9C'=*SY=F9M8Z++3+4BVJ[(%449S'"099DC" ),L
M35@*$F)F32@C//;+*/-J?6JAT;8 PYV.:O.C%Z?X6K)71<\4#J_><=S8&PKS
MH;?T6O4N+H?[@K(6'K -4\C"Q8!7*EWA@<WI8A4^#^G'>G>/:LWLLM-'Q0Q/
MS!DO5^5G+$4LB:D$.4VTK8YL%\:I!C"C(HN3W' <G&U6&[9PX[<3[7@QV;:U
MX3ZM>]M&M+ V1HO:2&<EFG.8YE3S)),)2$0J >(P RSF&C!(&)12)X0+GS$C
M!*:CY!RKPJ87E.K=EK-6C=U# >U&_P'@&YCHMQ9&I8E7T=;(<&Q^!H60O'VJ
MJ5$9^HR_^UQ\[O)^K/NN3JN_9[\^[E[^&9=*0Z@5(-!J.6I& *." D,.><[C
M/%$Y;RI>WKMS[_'6G-[SEV4L[T=@8+LM)IM3!_.E6#VHLK!E;Y(X@;4;1UP
MW4CR(0U4MK9DR\2KR  9CB6Z<0A)$B=:&I4CNKW=IX@S5_><C:IO#^VR0]N=
M<4YI3)-4 )0BPQ&Q,O&#8!) GD-#%IF&N5<0<:JAJ441M9VM EA]3U6?A-9Q
MUA@ L*$GB'VP\I\'G@$BZ)3O5%OCSN[.>'PPD3MW?3]N:$H8[HY4&JZ?J83%
M)#4A Q(J!X@(#"A&' C!F.222)PF/L1PM)6IL4)C9+3>6GD5+3M&/@] W>C@
M8I@&YH(M0E]:"%7)W2\KUM8)E!]71<!3B)WHA"2(XPV-R@Z=ONY30_?%_7CA
MPU*L[2SEG:K^^V%YV,HL235/",,@MD BS!) %9<FG" 9$8K #&&_JOHNS?:8
M;(S/''ZDX82V&X<$0W <2FG,C=XT!O]F#XL?89IP1.(#44A><6IW5)KQ06*?
M=;SN]=_ ;\V$*I&KW>J)&56NE_87U3!3I@R84<<612]F&L,\33,("$,F=%$I
MM4K''&2(\216F<32*0O[ ANF%MA88ZMLHVI8%FUCW;?'^_9(-V^-A/.82R>5
M#U:K:;OD:GO ^%'^N@Z.;L;M!?=LAA%Z8Z2TA\%ZQ2M)XD(\.[(I^CYYM+2+
M"UUOYV=<^J@+#M)_7RW,'455GF,&29;$&@F DS0U$^0L 2P3"F@F<\W2!+,L
M\]G-/&QBFAN993I[;>=_U"5^>ARK?@DFC5.A,JY!CDAF9A"Q!DP3#A2)%1(4
M0Y[GL\?J@.F&K3=C0+K?W'# OF4+.V6^&$6%\UBK) 9IG@B B/F#"HR ^5'.
M8*8D3F6-XNW2<286 L.FL>DCZ+A<>Q$F0R_4MHS[CZ8JU/5FLY[SITU9GFZS
MBCXS*T 0^/S]442"'Z]_V<KXI^>/>GGT</SQ*_L-0&^?BOE2%<7-ZH'/EV6\
M=+-:%G-9#GZKY?V:+8MJ9$QFS(Q!20KM!DY,;5)( @B!#)@I49XD$*($:Y]E
M6Y_&IS;IJ0:M1_.X[W9YX7$]%^47P(3IEK6*>.V;'W5X=8<;J0P%\L!TTY@=
MM>R^BEY8'K5,#T<Y?? *249>[8]*4WV0V2>P7L_H6]9CN\%MPO<C@S*6+#'A
M(049Y 2@%&> <:( ASF+=:(RS)A/I'VNP:G%W2U[R^6;KT<B\*NH)#K?RAYG
MD'=CKI!X#LQ6^U#>=D]?>M3Q<(,B;!V/,VV.7,?##8'#.AZ.]_7>WWYZ>%K8
M3:!2I,66)3(?D3*4]D-]*%/"[/K!)[6YT_?LUPQGG(J8*Q,]V8-BB!! N6*
M2LAY"B%GJ==9#,_VIQ9%M<R/5J5XDF@[4&J2EIOD-A=WPWYY[Y5[=8[S+OI0
MD ^_O[Y%NY*J>F%[5!D?O;'F_U9FY5G8[SM@[[/)W@>\P-OO7B:,O3'?!Y\C
M6_:]'M-[,]\\T#QG=^!C)QQ'<@ACJ3'06%O-/ZP S5$.=*Q1K+.8IDSZ,%Y7
M8U.CMP^?;NY^OXWNK_]O[_WZTX Z[],'@6GX_7E+.7:'9&?H0!IY+I $WH\_
MW=[8^_!G/3^R_W[^GKXZP]=2KNTLT/SU;GV_^KF<$9E)E.H4Q#G+ 9(D!413
MPQ5Q+'B<<HRX$TUTM#$U=JCE<FL[KZ(;YQV/+B"[Z2$0/ .SPC%DS!L663-#
MJ@B?Q.!B >'#)X^L'7S2M4/9X-.7]@L'&@7++ZH,0%HSL%J@>$8T2=.,FVD/
MT<INRTG $JJ!F?P(J#'.!?$JJ'JVQ:E]^B8^6]LB7C_9-WO^A:^63T6]=&!8
M]V%>%+;XMU_0<!YVM\@A*)A#$T5M*UA7QKX\5E3;&RZ"<(8F9!AQOM%18PEG
M#/8#"O<;^XJI%9OU7)A'EZL\?RSGF^++US_J:BL9PPPBD0%*[;D#>Q:)YI0#
M3'(37!"&*?.J"];9VM3H9F=L51DO*LV-WAB#?0L(=J/LQC#!L!N873IA"UCJ
MQ@N7L+)L70V.K,_FX/NA4)O+33VK3=AUDRH5[)-QH:*H[?D[G7"I8@(!IE@"
M9%.US P&@HR9O^8Y@2+W$CCJ;&UJ=%*M';+26L_ZRMVHNM%',*P&IH\*IB8O
M=&?J("<<G4 )6B&AL\%QZR2X^'Y0+<'IIA"5:FY6Q6:6QQEFB<X TQ "E',"
MF%WDD#25.(UQAH4?81PT,3F6V"N=(HR-E]1,*6%T9(B+P!F:%O8KI=QT 7-A
MD92V[\/51RE;><72*&TONZNBO+BR9UZ),J2A3A1;J?6)BG=/ZK\46[^?_U S
M1!/S[4,.LI0J\^FG#/!88)#*W#  EH(2+^4S7P.F1@SFE<*>"26^D+O1Q)!
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
M_Z'DA^7&O YSOE!53'O]8 7J_UV&M74ZGSWW?&_Z1<VL; ?$DM@9KS;<DF/
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
M)TP;"F1) G,%,4>NX6_[P5,C/&/;E=W:=P^L7L!T/D3MZ_S WV?C]_F/LQL
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
M>O=*L%-E_2WH-R*^4]I,ZRL=7EOVT;1GAU^[<;#;3)C9W-8\IP1P)"5 2"6
MQ5  A$7.4FU"],SKE(=3JU,;AVJC(]&RNCP1<%566XG66\O]AB.W+G ;28(#
M._ @T&#:-KB<]%R52MWAB-H+F) <Z];PJ/3HA<4^L_G=/'*87N7-?5@6FW59
MB:JXVWQ7Z_OO;%F?UOV'*C:V8EVU/?K!^K LYJ)DW%G&<XQYFH$XMRF\E")
MI4" RX0*37+(Y#@A^T5N3(TV*UNC-W*U6+!UJ2U<)L*,%;1?]DX,',"/UM/3
M#^;K).86%E$)1K0Q:.PJ/-2O4ZO"PQ:4:BJP3<39:C-/(-P/TL^3"/TO\^2O
M,0T(TEO!I@1AK F]7K_-'52$)0G+.(#:O&D(4@QXSG/ F&(DY903Y55[Z'R3
M4QOA6NF@C\W"O=VK4H%3!7SS-<,B^;JI @,F5;K#-,["_>ND.;JCX+YL'RCQ
M\*,JBM5Z*U7W4=E3OA5!%O>KM\K,.Y3=Y/EDVKO_J18_U.]F=O*]F,$LRU.E
M$D"I9  1*H!Y^3"(*4DUYE0SZJ0O=ZDA4R,L\THF?IS4NPO<F&H,8(?>:RQ=
ML*7(&M'+THNK;9B[645<18TG=4'\NV7 Z/12%$/26V];1B6]2Q';I\*+G]>3
M(.=+=:=OUDK.-^^9J-:&E=TO-4:\7:W7JY_F+S?,O+KF-S.J4ZIBG8-80 *0
M8MP0I,WB1IA11.-4(J^(S:_YJ9&AM=Z&;J*T/]*U U?1T_+)3E-YXT D:@\\
MJ=.O<QP)<S#(AZ;)&NW*].C]%NVM]='6_.CF'.#^%-D+MZ#$Z&?!N'38"YT#
M$NSW%']1X:8FFIE/\_FRG$[?J_5#_=?W2LW2A#,E- >\/.&89A 0:O_026K^
M3T)-G&0VG5J;&K&UK(NT<DP9<\.UFZ2"HS4P)VTK(;:,O8K:\+T/"Y^[!G%0
M&$?2([X,3B]M8F=X.G2*SS]C-,UB9W?:^L7N-P47":S$=66>$$0Y!QGF.4",
M$$!RG@(:)X+E$&491(%4YR:I9=PJR1G-MP875]&W3A7>?F!CDB5:YAG(,A.V
MHQ0R$[OGRD3Q-$=2R(PS%DQ[T1ON<546[8K@"\!+>TV8OEX_V_"1E?M @3O
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
M,$Z95YQ\IKVIC2R-N=%Z:^]5M%@MOX%-5U)Z+ZC=AH"   [,WEOLOK2P8]H
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
MR^_%H^5,3V=_QS=B/2\L+2U&[^9K80IDZ+^.^X BQB$QV]$\,G5\DI@84T?
MC. D0"A3";9:?K-M<&SF316O8R*"J]Q:NL =,M:W[UJ!6HAF!6P/B4QMF>G4
M0[S6YK"NG24#%SZ9[75^JE)F3YVI=>':G>UVJ@BC)C%32%&D/:<P,77 8\BB
M-$P$92EQDY/&EL:F(].[QX?[AY^>@':6P-//=X]3-S%IIM1.13HAJF?Y..4\
MUB /ZUL]>3A7R>A2,9H;&U0JKO;Y>XVX?H%[*-Q[M5B^SA=F>.[XIGA]\$6@
M-, J%)!CI2 6E&OG)%-02P$.0L)$*H1M_%O-_<<F!!6(/]A':]41US[Q.Z"C
MY^E>00<^E?@<(MCJ.+$/6[N1FX%BU1PY<HI2:V&@)32M[JK!XM%:(%>#T-I.
M\TR(=,QW.U>;=[OUVBQ1EU^YP&Q78JU:1$AI]C&UKR0R"H,(!;',A*+42K^N
M-S4V*3O" _D9L:6D6=!J9]9T0U;/0E<!.0$E:5W.9GLVNJU-W]C:P)7HK_7Z
MLN[\U2O<;9N[U6K-YAN6/ZGU/W.ARLHD"D=(VS(<,H12B+-4*X7Y"# E,0V4
M_LY8Y:UN:6-LPG"""39'G/9/]28:KUL['9#3LQ"<>2DA>@3N-Q%D;_IT0-1
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
M4&0.%+$JX;?&:D^9YEK_*#UWT(O':5I8UQ&N(_6QC<K%Q<)/EWYVQ=V&!9/
M!$T-R;YTYLNB-&E4F2CK:%#@O#2BCU79__AQ^AA6,BL#2'!D$/R;7Z2"<(3S
M^]476&PY\(X:IZ4B,97D4Y) O&>9""><DX$EZOM@8/_3QVE.6 <" \BO 3_T
M*O7X=CJ'4_QR.4DR*>Z")LP'Q##D3)SEGMB0F>+1&D'WW+8:,&5_1<HX(?"
M6=F!I-P 3C["5YA?PO+Z\,+P(($*XE3*B/,R+\(@_9+9Q )HP^N$*W<):21S
M?Z!BNP&EW Y*WJ"<7G;S-0M_FZZ^O+Q<KKIS6+S^%F>7I7;S9+D$_"^=^6]H
M,)-1-AM"O4,6+2WMTZ(AFIF8@\W*JSUU2X,!Z2FTCHNUX\"Q'VG5--4 &%]V
MR]7[O&7T6FA@(6C!B: 62@Z;$PO(4U!*624UE?M*M(^'VUYJ&MG@AC%>Q\N[
M&=#\UG7IIJOXJ9NE">[X%'3V)'%>9J!02TI[1X+,.<#_B<#V7# >"CG[2!K7
M'@V@[[T(.EKX#<#HMT6W7&+,D:>K2;8L0G2<:/#%;(I K )-J..""D/+Y)P:
MN+E!PSB' )7LS*&R/1P6W<K/AHFV8#8KMR)A#@L_0XR?I//I?#T7H=RV?_WM
MHIRZ3I0.R9?EL^D:J7)$P6#DH:6.'O^+/%=QB?J1-\[Y0"4P5=!( ^;G(^H$
M"?B"_+Q"^SSK+HK$MLSL4IO7/MXV1WXZQU452Q=LM,,3ZG-4P@'Q!M"0R\C1
MA@>,=Z/U@>:0TMUDX%!^^=&TCW. 42TF?%Y=CIV;/B\-C/YKK:TN[^(1/T^E
MI>*Z>][R%)4Y_SP-,RC1R6HY\=RGE)@B8)DA4G-T#IQ?7]^2*6MPFMTI#]N?
MMW[ZJ\<Y\A@8:<\A]@:,XOL+*$9]_GE3C_L6O8B)4R$Q265I[;^^\X=V/<M
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
MAY0UXX/5 ]NPVFDD@#P_GVX.O\M-X76OP<\PCRC'B> V6*Y"F<;@2O5?).7
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
M3A*WSJ(T")A0>GD[1QQ5CD0KDV>>&V'KY"'WDM/D\<JS0>SI&FEB!$Y_L4W
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
M\U1J*KM+Y,NGZ>S[*\ 7GD_GA<$W&);\NY]=PL2Q<BD%K3%;3PC3UA*OT2%
M>8$W.ECMJY0@'DYR/P3^%%GU9];?V,$C!B5W6PB62WF+Y9?IQ74J><*#8TR#
M)X$[BF$+ Q*\280+F[+/P8#L4UW=\W7]X/33I.1K"+E!"]=C:=S.*9_,YY=^
MAN[H93FK2C1*LV[(ZQR1)<GLDW9$9ZJ=3R&Y;)[#Z!W%1;]& C_5<<!X6FX
MXGMZ<EQ/4RP_P!WA]@<W?G.BO% QZXB0$[),RU(8V M.M([<>I6=MJH&I(^B
MNA^$?ZI3AN?3XF"0_>=?[XD?9?'W]8_6/RG_ZB/D7\K??WP\O?5\E"4L5A"_
M_#5VYYOG?_KC]]]//O['^S>?3G][=_KF].7)N[.3ER_?__'N[/3=;Q_>OSU]
M>?KZT]4=C&7N4&NEH\,,5S ^888?E&(F7.]^.EO>YG<Y/;^8P0^V_Z$I^/5:
M%G>EM"7D'BZ?6R[P;05S#%'^,LC5R1O+XB0LUQ>T)D(FT)QB)*1L+A62Z_N?
MZ&DJ+67(7!E7)09]F*3GN:SU\5KR$\18T$$D- K6$ E6EXMH"LU#T!2TYNSN
M8<9S7MBZ0>G(@]F'0=%AU[8.U5<#+D _!B=&16,L;D@0I2W7L16Q-@C"+=6Q
MW*@U<404C@R]NA@Y")%/4MC!,+Q85_Q^6OG%:ICL]Z+[.BWEGWMXFZ!C)!$E
M@MC@=9F<!L0E+PESP69C!+>N"@0?(VK<EK//"[S!E/-TN+D-W.8P#,QZR@UB
M]Q7679N$59%%ZPB*!WUDIS() (XDGDU(40?J^TSFJ+4'7Q$Z[ECV%NW@@4H\
M J*?R['WV7/OSU8&K5*61/,<T,>1Z.W8)(DU+@0?>>1ZQ&O]XW0%;!F73U+8
MD?OSZWFJ&'J?O/Q??YQ^.CT[??_NTP%Q\ZU_/DS0^S!% T6LNX;L+[OS,)VO
M2;R.-I*&D%@PQ ==VL^8\A4DHIC4$:0V0'F-E?@84<<:H3W/?C5=QEFWO%S
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
MIV7$;2XX9^TL*P.R-10W.OM('$?96:9<=,J724#/BK8&KIL/#8*^&'NZ1AK
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
M+(*7-H".&4O(JC#_MZH]"=4;06TA)R%!J4!^ME^?R.!B\EDZUB;C]W/6GNR
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
MJNH AQ0M?:[5MG?%-U'!\$ G!HJ0)"TN+7CN$Y@<M1,HI,U-:BV>(J:__.E
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
MAN\/6&3%\Q*# X]U+E.INR2M4Q"EC29JQ7ANTH>]!ZWCOLT->F&VU5,'4'S
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
M@6'('[E"J@5\1]#K25[1PSX:[/M-[2_S8S\;/ MJITPRCGG0MG:J,N00DHQ
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
MD<[),,F+ZM-D-8VS(3AXB+3QA-(6Q-[_D=?W-A(<V0"!!Q FT@W@R!Y 3_:
MB8&I*%"B=!.CZT>*YKTM#PJL/40Q\T/&K_B_J_7=4^!-%PY7=')T&B!)LB25
M* R<B+Z6-3MF9!;)=E%3G5XP?EY^WDJ+21Z[]N3QS BIY1SORP][N#T\61>7
M425 [1/=_]F""RF#*%%E(57(=K0F #NIF.\=8U^QKL;F\<Q1H(\Y7J_7VRSW
M[:&YF_- [JT.,D&H!T:)*.G4> ;!TN&QQ6KEG\OGV?WU^:0_DLA6H_)O9@2<
MKI;KQS>AA47T-H-F)=6.Y@4<7;$@@@S(K;*)E0X@V+G ?.]0X^-@'"XV8*L^
M/4N(;DZ"-MG<*&M!(-,1/&92G3%$YVV4;)J*X_V'>4U6/S=9A&<\2311 _?C
M?)IH3$R:/+C K:93H3P$%BPPM(45R[(SD[0,/9JI7;WD^^34KCZL;G=J5T%A
MO=.2KM!<0%G'R3WS!NJ@(_HCZQ*S'2ZC7=]OHG7&$(%UF=K5AW>MO$K^,'\J
M,J.<<!9RK)T2.,L0@F,@R&$O21457.H@_.:G=@V5_/Y<:Z[EZHUKYI),UI 2
MQ.T.B@&,.D,NS"K)N9=Z-&=UCS:^DY4B3Q+9&('7S:'E;NI=L5([AV2])SH_
MGG/PED6()B2=Z'^V4Z;+7ZM!;R_!=FG0VX?+39B>VU+WS8VF/;FL,>;[V8'<
M<5U3-L"7Q&L_6G+^D >0&%+D+ C,DQ2?/$E52R@:(O:?^A>,)8$&7.2?&A'?
MF5E>!RZ3@)0S@M+UR/GD02JGC9$U0602(.V@9[[PRB00&H/K#8!G=\?JD%U
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
M=#7X?L2I<-_4=PTQDF;_D-?;SC3+F-^'R\6-AW9NDC)!8QV;7%N5AV+ YR+
M*6*-#D%BGB2XUHFZXTB.ZX.C'944(PJI 9^VTZ9._OR28[WG;T?0G=&?;@KQ
MDWYV$\2TEO8FG(*4"X?Z^@5(C(",3A(_6"AIRM9%>Y(_;QRF&>R.*^:_ KBW
M;OWKV@*SOO<F9(*K:D:9J&N%5 94A,E2O(\Z.B=Q/OW;>1M-*.J# G'LLS <
M%7^%,_$]/IQ*T+FP!-H@774B>?".29"1W$NALPULDAS]\;;0A.(_ZK,P# W'
M<@[H#V-%Q$4^]XKGY&,"4<BX4SXHLO!";:HNI4@VEN2F]$"ZTGGDVGT@G(:@
M>J!LCP6Z3W'YPS:@PL]+4))K+4';FL#&(H(/*$!(%U10L10^R8/Z6!LX<O5]
M0+"/C8:C+W)]&-TZ?_!",VDD[YS/',M[N-MOT;R_[<WX5^]__?7MV=F>O63N
M?V5<5NVD[\ 1S1"444+2&=>D()5R!H(U&KSQP06,7IDIG<EF.L0H%K3-M: >
MU;:BPX"SF;2.2=5Y2M[P.?AP9 T1^J!I<(>8/J+:XTGQZ@#7PSTML/]#SB,?
MFTQGM? 80P:RCI9SB$%&4#(Y,A28 56L)0,Z.)8FF4]\J XO^&5QA9?U%?UN
MF5>KS=6-LQVY4]):#5%82T82UJ=4\KBE5<$[C](]3+@9Z0GZ":*.0T7U0<U/
MC]!CB:2%!N4W44-55-(UHS+7KOW&<'!9,OI7GKTK)4O4'7!T3'WJQQ/BHWWJ
M^W"T!1C<S5=#78O&(N0L:I*M(Z^K2+I46? :O<BZ4Z.38^Q3WTMB._K4]V%?
M8WWJA>.R),T@%T[;YXF3S18C:.\9TS)B'$\%--BGOI?D=O:I[\/$IOK4ZY""
ME49 '<\'*J8(3LL$QA6=C2H^=S(DCK5/_6#I#V9B X';'3?@]SA@MIY['4H=
ML9E )4]<89@@):1_E%<Q3)/@^ QA\P9:1S<<)I''S)G=9WB9-Z]6GS\O-AN2
MR^;%Y]7Z:O%_^#W">\YCE &Y);O;U@22'.C,65?[)WIFA711=RD6>'ZE)NW,
M@5)=3<;B=A72:;XZUUAJ!1\#[VL2>2H*G%0"D*5@1)1&I4FZ/^PFJ4DEM!^J
M1I9#NXBZ?U3.&4M6AMJG2>L(JC:V#LXFP#IRIB:YD=X^(+3NTS9OG?@<&!LL
MF6:? ,]^>WEV\O??3DX_U5>Q3T.>H7[ZQ#CQW*<I&RF*>W8=-OE?UT3BR1_;
M5C7? G#*N&SKH$@FJKM='6\6,Y!<F6*.#.]IPK:["-J[6]&#[WY_J,A)1\M0
M0PYU. A3!M!+#S;5%H41T89)I@[LI&CFUC5C(.*G!D:C</]HE,CP5Z)=7YI&
MI4SY/K031Z48IE,LX'6U>E6N<^"-K0F)WD1,.? ND:Q6-<N-H^FC59RP"RA$
M'0-D% 0A%1CG9+ ZH]23=.-^C)A&]4D?'#RC3_KSO 'C]^$>Z#_;!KIY\L('
M%Z$H3;Y@5IGTK"N@@PY!QUPX5X> SBT]3:%G@*"?0<X0KK<)GMN68[$HD5-4
MD'@DJS]H#8Z+VJU4L""*LSY/DGJ\DZ*V #1(WL]C: #SVT/1;9R<T19XHD/%
M-$MUA)T&'[@BUA@1(XN:\TDJ-1ZEICGT#)'TT_@9P/89L9/RXOQ=OL#+D^75
MXNKK]C"A3JJ6&P)#R\@U0 $^%0Z&CICQS)H2'G$6-W>0V>3XGQ>K/_Y&G[Y!
M"_WF(4@>67;F1H]CW4S[,G1F+-Q0?7LJM"AH<B!++IHZ^@AK)-(9B&B+3MDH
M_]@[96\@W%]S'@6QM]!6(W!PYD>DT[>OWB[CK?:RV6DNA(-0Z@AX92WI0X/
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
MG%* (R)T9YCH]@?UEX";_%__\?]02P,$%     @ \(134L2Z1NYN P  ;PP
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
M"0(Y;-&3;[2,N@%[MA?N=X[7KZ^YP7QA<O(YNRK4+!/)&*AU$UC/7*)@2:'
MQ1B(RP(3.V=5874EX C8V1$UII2S''=:8M)3'N.19BH'X5CEZZU5*$0LC.%Z
M3E5R?B4P[E*?!L\2&(,A,\?R&(,JQ%*#U5&M0'-8DB"0LXF,)\Q4=+EM/Q-:
MU)V0 [DT&>B?,LE,V@D<-*6(G8'4;PG35 (WIVB6L&B^/ V;<?'XV#]5#/6"
M1T-(L%06"!+%^S8H3> 'U5&LE\IED6)U<A(/^!UG58(^$?BE"#0!&JFS.2L1
M-X(<03'+;C%5A]/<&1JP39PJ:5*-*D,% $DAVFXXX^R)N9FP-%,SLT"9%F-I
M+"2-99P>>KMA97,)+&9AS)JU/SI>^MLY9[0RN\_V#KOAP;&I(5&G2EJC*DTE
M;MV\7S*NA8LP(B:C3% DF "LHDR:"56G:CGXB3B*[A-IXDR9"NV(N;3*?*A+
MK6*1X+%ASQ'91  J/GP7U_&$%V/!7H$4/E89:H0]W@H'S\4+US0<)/[.WTI*
MT(6'&/7/B#F8JI:![=% ]CQXL'1EL!2#D:\^85$!Y;K[5<3NPF(;)A[FRD%W
MAUSANR.#CH+. <W#N3!0CL"72X0/6 # 5<PK\X@6R)61 ([K@7SV)<B;"I0X
ME<81+6J)PO5#DO>6HI=I7HN,NX51I]];2FC6*8 *)>@:<'#](G=(+PI<HBFH
M964H43ON,"ZK.QK&UA(&8,_G=%W)L0+C*N.4/>"&&_0VX:.%EP_+J@>_(D$5
M0?!H+Y)'$#K!]/'TO5/@CG8'W+7&7\7V9NK=0+O-NQA_<,N'0QW+8RH30C W
MJN"4G;@!^DF@$JRY3A:0 ^@ECV0F[9R$QJ9A:<$Y=#K@^;6R4G5)X+HD>%T[
M5%:Z!/"-$T9QK'3B#'!2=RP*Z)T,^$>)*$FO4!7(>(]Q+#A9(@?]6"B/=P?E
M"PJ_F/*L<D=>A &1IE"T<HKHF0W*]$8[/8"X_>UFL>I0C88@7>,E<:0JN]V"
MSP_7]*+9=T%Z/_W\%HM%BYV$6ZC"SP3L<:"D 7X88":[ \P%_?J0KT.'3@-J
M)>M*-N+S$:1+>D'%<:4)($O)>D.ON3(6S^F@#'V9&!W]62'7H^OG6S89*9 .
M.EQ4JRW&[D^X$XQB]=3HA3=GPLV-A"$&=4M")"ZUN(FH:7_.,GDELOHXXT[]
MYO\]-U]E&>S4;F&P]=#AK^TAW2EALD!R\Y9PB/^6T73+/02+1XB--2U[8QJ'
MGK5*FYO\[AZ@RSR7U@IQ#[M'"@J"RA,)^UPGSP$]D*DALL9_4M6+A2+^K"3,
M=XNB*F)RXL67VBX^53[=P;W:JPQ*#LI2 J!TR$1' [$40%2=K&\V33/!KRC[
M>F7G\J_3I.Z =7&,M0FG9CO-^@V//U/9P%X\04,C;LAK*ZAK*8LF0"849]-K
M  ,!8*H\YQK3Y+RIL\7&$[\?+[_OWO;J%=)XJL%)36!#.!H%O-RI>8W#ID^&
MLIBJ;"HH(Q9\7!_^ZYIY15YF:BY0.ILH3[=\!>5 Y6-TPG8$!UNC#M"-9=&*
ME+4J'\*YX_J)5:6[W?2.S;I=6]U#!" +W4(X,EX:,5S\.$;J*#,^'\K"3:IK
M=#RE; /M47>)4>HWP8='P>"P1R^#+4!JDT7W]7OBP+TG;MMDO8Q>T?8/MQ9W
M@G!KV7W=AH,@/#CZXMWV@FY_>\O[>KV_;' P^.*V]@=!=W#PH&[;+FH^<D"
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
M797_* LLKGEMIJD2/?@74$L! A0#%     @ \(134AJ+CV1';0, =%@E !
M             ( !     '1Y;"TR,#(P,3(S,2YH=&U02P$"% ,4    " #P
MA%-2*\V7,EX6  #ZZ   $               @ %U;0, ='EL+3(P,C Q,C,Q
M+GAS9%!+ 0(4 Q0    ( /"$4U(\'(,RPR@  ->T 0 4              "
M 0&$ P!T>6PM,C R,#$R,S%?8V%L+GAM;%!+ 0(4 Q0    ( /"$4U()(2^A
MU'<  )[Y!  4              "  ?:L P!T>6PM,C R,#$R,S%?9&5F+GAM
M;%!+ 0(4 Q0    ( /"$4U(TK=T,C: ! #-2 @ 3              "  ?PD
M! !T>6PM,C R,#$R,S%?9S$N:G!G4$L! A0#%     @ \(134@ZB6I% '0$
M*, + !0              ( !NL4% '1Y;"TR,#(P,3(S,5]L86(N>&UL4$L!
M A0#%     @ \(134K=TRNW7MP  ]TD( !0              ( !+.,& '1Y
M;"TR,#(P,3(S,5]P<F4N>&UL4$L! A0#%     @ \(134L2Z1NYN P  ;PP
M !D              ( !-9L' '1Y;#$R,S$R,#(P97AH:6)I="TR,RYH=&U0
M2P$"% ,4    " #PA%-2S+"(%R,(  #5+0  &0              @ ':G@<
M='EL,3(S,3(P,C!E>&AI8FET,S$Q+FAT;5!+ 0(4 Q0    ( /"$4U+7GQOF
M( @  )$K   9              "  32G!P!T>6PQ,C,Q,C R,&5X:&EB:70S
M,3(N:'1M4$L! A0#%     @ \(134ME(]^5%!0  @"H  !D
M ( !BZ\' '1Y;#$R,S$R,#(P97AH:6)I=#,R,2YH=&U02P4&      L "P#A
) @  ![4'

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